【发布时间】:2023-01-25 14:30:37
【问题描述】:
在我的主页代码中,从 firestore 数据库中获取用户名,这在 UI 中显示得很好。我想将该名称传递给共享首选项函数并存储在那里并在其他页面中也使用该名称。
代码
主页代码(初始化状态并将名称发送到 saveNameToSharedPreferences() 方法)
@override
void initState() {
super.initState();
getData();
fetchName();
storeName();
}
void storeName() {
String displayName = '${user?.displayName}';
return displayName.saveNameToSharedPreferences();
}
共享首选项代码
import 'package:shared_preferences/shared_preferences.dart';
String? _displayName;
String? get displayName => _displayName;
Future saveNameToSharedPreferences() async {
final SharedPreferences sn = await SharedPreferences.getInstance();
await sn.setString('displayName', _displayName!);
}
Future getNameFromSharedPreferences() async {
final SharedPreferences sn = await SharedPreferences.getInstance();
_displayName = sn.getString('displayName');
}
如何解决这个问题?
【问题讨论】: