【发布时间】:2021-11-28 17:31:16
【问题描述】:
[我的代码]。当我使用 User user = Provider.of(context, listen: false).user; => 用户空 My code here
class UserController extends ChangeNotifier {
User _user;
User get user => _user;
Future<void> getUser() async {
String token = await AppValue.getToken();
Uri uri = Uri.parse('http://20.89.111.129/api/user/getProfileUser');
Map<String, String> headers = {'Authorization': 'Bearer $token'};
try {
final response = await http.get(
uri,
headers: headers,
);
final data = jsonDecode(response.body);
User newUser = new User(
address: (data['address'] == null) ? '' : data['address'],
birthday: (data['birthday'] == null) ? '' : data['birthday'],
email: (data['email'] == null) ? '' : data['email'],
fullName: (data['fullName'] == null) ? '' : data['fullName'],
);
_user = newUser; // _user is not null
notifyListeners();
} catch (error) {
log('ST WRONG!');
throw (error);
}
}
}
// 当我使用用户时 user = Provider.of(context, listen: false).user; => 用户为空
【问题讨论】:
-
请将代码以纯文本(格式为代码)的形式发布在这里,而不是外部图像的链接。
标签: flutter api future provider