store.js
store.js copied to clipboard
请问一下代码中的 ```even_storage``` 这个空函数的作用是?
@cbbfcd 我昨天重构的时候删除了一个函数,这个是多余的
store.onStorage = () => {
}
现在没有想到好的方法实现
dealIncognito
方法只在初始化的时候执行了一次,应该是每次setItem的时候都需要去判断是不是溢出吧?
@cbbfcd 你的意思是在 dealIncognito 里面还要判断 localStorage
是不是存满了?
我觉得是调用 setItem
的时候,进行 try...catch...,如果出现超限的异常,就进行hack处理,用一个对象来继续完成存储,当然也可以增加一个配置,用来表示超限时可以删除某些不重要的数据进而释放空间。
@cbbfcd 超限制提示倒是可以搞一下
因为只执行了一次dealIncognito
,就可能是当时没有超限制,但是在不断的 setItem
过程中,突然超限制了,这个就没覆盖到,所以我觉得应该是在 setItem
函数执行的时候去进行超限的处理,处理的方式可以简单点,直接抛给用户异常也行,用户自己去判断某些资源可以删除的自己就删了来释放空间。
我想想,然后提一个PR吧。
@cbbfcd ok! thx!