像indexedDB这种浏览器提供的大容量的本地数据库,具有什么应用场景呢?
1.在3D场景中模型数据很大,有可能存在数十万级的数据存储,大量数据存储在内存中会很容易导致内存溢出,因此采用indexedDB存储大量数据,减少占用浏览器内存引发的页面卡顿或者页面崩溃等性能问题。
2.3D点云的文件格式.pcd,threejs加载3d点云的需要使用PCDLoader加载器,在PCDLoader.js源码中加载pcd文件需要遍及数十万级的数据并计算position,points的信息,这个过程耗时较长,会导致js阻塞从而页面会出现较长时间的卡顿,采用web worker增加多线程把计算position,points的信息这一步放在worker中执行,减少页面卡顿时间。这种可能会有这种问题需要验证: 3d点云中的mesh模型对象存储到indexedDB时,从indexedDB中获取到对象之后怎么反解析成Mesh对象。
13 回答12.9k 阅读
8 回答2.7k 阅读
2 回答5.1k 阅读✓ 已解决
7 回答2.1k 阅读
5 回答1.3k 阅读
3 回答2.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
比如存储markdown编辑器的内容, 方式每次输入都传递给服务器进行储存
或者一个表单里面需要上传很多图片, 就可以把图片的base64存进去, 然后统一提交
这里也有一个例子
不过整体来的说使用场景目前还是相对少的