【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来存储值的功能了 |
|
|