mirror of
https://github.com/qinglong-app/qinglong_app.git
synced 2025-10-09 16:48:19 +08:00
add login
This commit is contained in:
46
lib/base/userinfo_viewmodel.dart
Normal file
46
lib/base/userinfo_viewmodel.dart
Normal file
@@ -0,0 +1,46 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:qinglong_app/base/base_viewmodel.dart';
|
||||
import 'package:qinglong_app/utils/sp_utils.dart';
|
||||
|
||||
import 'sp_const.dart';
|
||||
|
||||
var userInfoProvider = ChangeNotifierProvider((ref) => UserInfoViewModel());
|
||||
|
||||
class UserInfoViewModel extends ViewModel {
|
||||
UserInfoBean? _userInfoBean;
|
||||
|
||||
UserInfoViewModel() {
|
||||
String userInfoJson = SpUtil.getString(sp_UserINfo);
|
||||
if (userInfoJson.isNotEmpty) {
|
||||
_userInfoBean = UserInfoBean.fromJson(jsonDecode(userInfoJson));
|
||||
}
|
||||
}
|
||||
|
||||
void updateUserInfoBean(UserInfoBean userInfoBean) {
|
||||
_userInfoBean = userInfoBean;
|
||||
SpUtil.putString(sp_UserINfo, jsonEncode(userInfoBean));
|
||||
}
|
||||
|
||||
UserInfoBean? get userInfoBean => _userInfoBean;
|
||||
}
|
||||
|
||||
class UserInfoBean {
|
||||
String? name;
|
||||
int? age;
|
||||
|
||||
UserInfoBean({this.name, this.age});
|
||||
|
||||
UserInfoBean.fromJson(Map<String, dynamic> json) {
|
||||
name = json['name'];
|
||||
age = json['age'];
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
final Map<String, dynamic> data = new Map<String, dynamic>();
|
||||
data['name'] = this.name;
|
||||
data['age'] = this.age;
|
||||
return data;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user