用户管理工具封装
1. 为什么要封装
在进行如下登录功能时, 通常需要将一些用户信息以及token进行持久化保存,以方便下次进行数据请求时携带这些用户信息来进行访问后端数据。下面分享一下鸿蒙当中实用的持久化封装操作。
2. 步骤
封装用户信息管理工具
封装全局用户信息管理的工具
export interface MkUser {
token: string
nickname: string
avatar: string
account: string
}
class Auth {
KEY: string = 'user'
// 如果要常驻 硬盘中 EntryAbility
initUser(){
PersistentStorage.persistProp<MkUser>('MkUser',{ } as MkUser)
}
// 获取
getUser() {
return AppStorage.get<MkUser>(this.KEY) || {} as MkUser
}
// 保存
saveUser(user: MkUser) {
AppStorage.setOrCreate<MkUser>(this.KEY, user)
}
// 移除
removeUser() {
AppStorage.setOrCreate<MkUser>(this.KEY, {} as MkUser)
}
}
// 导出实例化对象
export const auth = new Auth()
3. 总结:
核心步骤:
-
创建PersistentStorage进行数据持久化;
-
使用AppStorage的api进行获取get、保存setOrCreate、删除(置空)等操作(因为目前PersistentStorage和AppStorage用的都是同一套api);