IndexedDB踩坑必须注意点!!!

游标查询的排序

升序降序首先你要知道IDBCursor.NEXT_NO_DUPLICATE这种写法已经废弃了官网,现在是IndexedDB踩坑必须注意点!!!_第1张图片

 var requestaa = index.openCursor(null,'nextunique');

 现在是这么写。

注意!! 无论是升序降序都是根据表的主键来的!尤其是取升序降序的第一条数据,它取的是主键最小的那一条!写聊天页面时要特别注意!

所有的建表(就是新建对象仓库)都要在版本更新后,在upgradeneeded里面进行。

所有事件都有成功和失败的回调!

db这个变量在你打开数据库后就要给它赋值

db = event.target.result;

记得之后不要污染,不然你很可能会发生db里面报错找不到某个方法属性

自定义的主键,只能自增,设为不自增时,后面再存进去数据,不会覆盖主键一样的之前的数据,需要删掉之前数据的才行!考虑一下可以做个笨点的聊天列表最后一条信息展示。

更新indexedDB数据要多使用IDBObject.put()方法,直接用游标查询再js替换会造成列表刷新。建议不那么写。

 

还未解决的坑:

建表这边,测试发现,你通过更改版本号来建表(就是新建对象仓库或者直接新建数据库。在第8个或者第十几个时会有几次建表失败的举动。目前还未解决。

 

你可能感兴趣的:(IndexedDB)