老师,为什么加上reload刷新页面会导致redux不完整,需要删除,这里不理解
登陆购买课程后可参与讨论,去登陆吧
同学你好,解答如下:
首先redux-persist作为存储,它会将状态保存在存储引擎中,然后在页面刷新时在存储引擎中加载。
window.location.reload(false)它的设计理念是有缓存就走缓存,没缓存就强制刷新。如进行一同使用时。就会出现缓存被清除从而导致的不完整问题。
祝学习愉快!
老师,最后一句话不太理解,缓存被清除后,页面强制刷新,为什么会导致的不完整,不太理解导致redux哪部分的不完整
同学你好,参考如下:
1、redux-persist实现数据持久化依靠的是localstorage。
2、window.location.reload(false) 也与缓存(localstorage)有关。
3、在onLogout执行时,dispatch(userSlice.actions.logOut)还没有进行变更时,window.loaction.reload(false)就会执行,那么也就是说userSlice.actions.logOut的相关动作(赋值退出的相关操作)还没有执行完整。以上动作window.loaction.reload(false)并没有等待,页面直接刷新此时localstorage中的登录态也未改变,所以大概率会导致不完整的情况发生。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
登录后可查看更多问答,登录/注册
入行前端,是明智的选择!市场需求大,就业前景好,入行门槛低,小白易上手 全新升级:技术更新,Vue3.0/TypeScript/React17.x; 技术更全面,从0基础到全栈开发再到大型项目构建
157 1
75 1
31 2
201 5
155 1
在线咨询
领取优惠
免费试听
领取大纲
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星