更新 flutter 中的共享首选项列表数据

问题描述 投票:0回答:2

我只想从我的列表中删除数据,然后再次将数据设置到共享首选项中,到目前为止我添加、列出和删除了我的共享数据,但这次不起作用。

这基本上足以更新共享首选项。列表

RaisedButton.icon(
  label: Text("Delete"),
  icon: Icon(Icons.delete),
  onPressed: () async{
    SharedPreferences shared =  awaitSharedPreferences.getInstance();
    myList.removeAt(index);
    prefs.setString('myProducts', json.encode(myList));
    setState(() {});
  },
),

我有这个错误:

flutter dart storage preferences shared
2个回答
0
投票

您收到的错误是指向 setString 的

NoSuchMethodError
。检查共享的代码,看起来您正在
prefs.setString('myProducts', json.encode(myList));
上调用它,并且
prefs
可能尚未初始化。这就是为什么日志提到该方法是在 null 上调用的。确保在调用该方法之前已初始化 SharedPreferences。

SharedPreferences prefs =  await SharedPreferences.getInstance();

await prefs.setString('myProducts', json.encode(myList));

0
投票

只需从共享中更新首选项名称即可。

shared.setString('myProducts', json.encode(myList));

只需在右侧实例上调用 setString 即可。

© www.soinside.com 2019 - 2024. All rights reserved.