store.js
store.js copied to clipboard
修改隐身模式下对storage的处理
修改:
- 通过IIFE,在初始加载过程中判断在隐身模式下是否可以使用localStorage的存储API,不支持的话就通过内部维护的一个对象来实现存储,并实现
key
,getItem
等方法,上次的实现少了storage.length
,storage.key
。
2.删除每次setItem
的时候进行超出容量限制的检测,因为超出的话本身就是会抛出异常,用户可以通过这个异常信息对症下药。
@cbbfcd 我这边已经将代码覆盖率,整到 95% 了,你的代码,需要添加一些测试。
npm run watch # 实时编译 main.js
npm run test:watch # 监听代码改变运行测试用例
根目录会生成 coverage
目录,打开 coverage/lcov-report/index.html
可以看那行代码没有测试到。
好的,我想想怎么去测试这种情况。
暂时先增加了一个简单的超限的测试用例,隐身模式下用对象来hack的方法测试报错太多,我还没来的及排查。怀疑是原型上的一些bug。所以暂时还原了大部分代码
- #8
- #41