![](/img/trans.png)
[英]How to pass Future<void> _name(String _string) to a widget in Flutter?
[英]How can I pass variable from Future<String> to void in Flutter?
我正在使用 SharedPreferences 我做了一個簡單的保護程序和吸氣劑,但我想在使用 initState 打開應用程序時加載我的變量名:
data是一個帶有占位符的字符串
保護程序
Future<String> saveNamePreference(String name) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setString('name', name);
print(name);
return prefs.getString(name);
}
吸氣劑
Future<String> getNamePreference() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
final name = prefs.getString('name');
return name.toString();
}
無效初始化狀態
@override
void initState() async {
super.initState();
await getNamePreference();
setState(() {
data = name;
});
}
您必須使用 then 方法來執行此操作,因為 initstate 在數據從異步方法到達之前完成了精確計算。
@override
void initState() {
super.initState();
getNamePreference().then((name){
setState(() {
data = name;
});
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.