为什么我在尝试存储字符串时不断收到“共享首选项实例”?

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

我试图存储用户的用户名,但是当我打印用户名时,它显示“SharedPreferences 实例”。我不确定什么不起作用

flutter sharedpreferences
1个回答
0
投票

每当您想要存储新变量时,都不必创建

instance
shared preferences

就像在第一张图片中一样,您正在创建

shared preferences
的实例 3 次。

您可以使用

single instance

设置所有这些值
var sharedPreferences = await SharedPreferences.getInstance();
await sharedPreferences.setString("userId",userId);
await sharedPreferences.setString("username",username);
await sharedPreferences.setString("email",email);

如果你想从

shared preferences
获取任何存储值的值,你可以这样获取。

var sharedPreferences = await SharedPreferences.getInstance();
String username = sharedPreferences.getString("username");
print(username); 

这样就可以从

shared Preferences

中获取存储的String

setString 是一个异步操作,所以在其中使用

async
。 而 getString 是同步操作,所以不需要在其中使用
async

快乐编码:)

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