import 'package:app/data/local/storage.dart'; import 'package:app/request/api/user_api.dart'; import 'package:app/request/dto/user/user_info_dto.dart'; import 'package:flutter/cupertino.dart'; class UserStore extends ChangeNotifier { UserInfoDto? userInfo; String token = ""; Future init() async{ token = await getToken(); await setUserInfo(); notifyListeners(); } ///获取用户数据 Future setUserInfo() async { if (token.isNotEmpty) { userInfo = await getUserInfoApi(); await Storage.set("user_info", userInfo!.toJson()); } } ///设置token Future setToken(String value) async { token = value; await Storage.set('token', token); } ///获取token static Future getToken() async { return await Storage.get("token") ?? ''; } ///退出登录 Future logout() async { await logoutApi(); await Storage.remove('token'); await Storage.remove('user_info'); userInfo = null; token = ''; notifyListeners(); } }