我一直在探索使用PouchDB作为栅格地图图块的离线缓存。具体来说,对于Leaflet。我刚刚完成了一些我认为可以分享的初步测试。
答案 0 :(得分:10)
我创建了一个“JsFiddle”(实际上我现在更喜欢CodePen),作为展示如何使用PouchDB缓存离线栅格地图图块的游乐场。
它使用的算法如下:
在按下“下载磁贴”按钮之前检查清单是否已存储在数据库中,并且存在171个磁贴。如果您已经运行了测试,那么您的PouchDB将在数据库中已经有了磁贴,您将收到错误。在这种情况下,请按Delete DB,然后重新加载页面。
按“下载磁贴”时会发生以下步骤:
目前Chrome正常运行。 Firefox非常慢。几个月后,当我使用原生的IndexedDB API时,我发现了这一点。所以我不认为这是一个PouchDB问题。可能更多是由于FireFox使用SQLlite,这是一种无SQL数据库的关系方法。
IE10无效。这很难过,因为我之前使用IE10测试表明它有一个非常快的IndexedDB解决方案:Storing Image Data for offline web application (client-side storage database)