doubleyong
管理员
管理员
  • 最后登录2020-09-18
  • 发帖数890
  • 最爱沙发
  • 喜欢达人
  • 原创写手
  • 社区居民
  • 忠实会员
阅读:138回复:0

[react]【mobx】使用computed的get 与set 方法,且结合sessionStarage实现刷新数据丢失

楼主#
更多 发布于:2020-08-04 09:37
【mobx】使用computed的get 与set 方法,且结合sessionStarage实现刷新数据丢失的方法


user
token
@observable isLogin = false;
@computed get user() {
    if(sessionStorage.getItem("user")){
        return  JSON.parse(sessionStorage.getItem("user"))
    }
    return {};
}
set user(data) {
    sessionStorage.setItem("user",JSON.stringify(data))
}
@computed get token() {
    if(sessionStorage.getItem("token")){
        return sessionStorage.getItem("token")
    }
    return "";
}
set token(data) {
    sessionStorage.setItem("token",JSON.stringify(data));
}
注意:
1. computed 修饰的属性,不能与@observable同时使用,只能使用其中一个
2.set 方法前,不用加@observable,直接写即可
3.使用sessionStorage来存储属性值,防止刷新页面值丢失。但记住,不要给属性给初始值,否则刷新后,初始值也会触发set方法,就达不到用sessionStorage来存储值的功能了
知识需要管理,知识需要分享
游客


返回顶部

公众号

公众号