标签:取消 解决方法 ora 导致 bug 出现 回调函数 特点 内存
从理论上讲 LocalStroage 内存更大,存储时间更为持久,作用域更大。那么SessionStroage有存在的必要吗?
有什么样的应该场景是必须用seessionStroage 而不能使用LocalStroage 的呢
首页seessionStroage 与 LocalStroage 相比具有的特点
1. 浏览器改变将失效
2.作用域只在单个页面,就是在浏览器用不同出窗口打开同一页面 ,SessionStroage 也不能通用。
初次接触发现 这些特点 好像都是缺点。但使用后发现使用SessionStroage 能避免一些BUG
比如 在一个购物车页面,对购物车的尺寸进行编辑。由于使用了 回调函数 导致全局变量无法正确传值。在这时可以 SessionStroage 或 LocalStroage 来代替全局变量。
为了 避免bug 在点击尺寸后 设置 SessionStroage 的值 ,在弹出的提示中 点击 确认 或取消 都会 移出 SessionStroage 的值。
但是在由于无法预料用户的操作 ,如果用户在 点击尺寸设置SessionStroage 之后 关闭浏览器 。这时 就会出现BUG
如果 是使用LocalStroage 值就会保留到 下次 打开页面,导致 尺寸不对。
如果用户在点击尺寸,设置 SessionStroage 直接刷新页面,SessSionStroage 的值也会被保留 。
解决方法 在页面加载时 判断SessionStroage中是否有设置的尺寸值 ,如果有则移除
SessionStroage和locationStorage的思考
标签:取消 解决方法 ora 导致 bug 出现 回调函数 特点 内存
原文地址:https://www.cnblogs.com/csdcs/p/10371623.html