首页 > 解决方案 > Flutter 生命周期:从 SharedPreferences 读取数据

问题描述

我应该在何时何地执行此类操作,例如从中读取数据SharedPreferences

SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.getStringList('_wordsList');

我想在初始加载时读取数据。

假设我们有:

1)class WordsList extends StatefulWidget

2)class WordsListState extends State<WordsList>

我应该在 (1) 构造函数中,还是在 (1) createState 方法中,或者在 (2) 中的相应方法中,或其他选项中这样做?

标签: flutterdart

解决方案


SharedPreferences prefs; // member variable.

初始化它initState()

@override
void initState() {
  super.initState();

  // do it like this
  SharedPreferences.getInstance().then((prefs) {
    prefs = prefs;
    setState(() {});
  });
}

每当您需要此首选项的值时,您需要做的就是使用

prefs.getX("key");

推荐阅读