Javascript Pouch DB无法加载Safari&火狐

时间:2015-12-11 18:18:20

标签: javascript firefox safari pouchdb

我们已经构建了一个基于PouchDB的小脚本和数据库,以便在所谓的"产品树"中显示我们客户的所有产品。 您可以在此处找到产品树:http://www.bodyrevitaliser.nl/nl/service/product-tree/

正如您所看到的,树仅在Chrome中正确加载。如果你在safari和Firefox中检查控制台,那么DB似乎也被加载了,但似乎阻止了树本身的加载。

你有什么想法?可能导致此问题和解决方案的任何想法。

1 个答案:

答案 0 :(得分:0)

您的代码存在的问题是您对promises的使用不正确。我强烈建议您阅读此博文:We have a problem with promises。我知道它很长,但阅读整篇文章是值得的。

特别是,请阅读名为" WTF的部分,如何将forEach()与promises一起使用?",因为这正是您所犯的错误。你正在$.each内进行一堆插入,然后你在同一个函数内立即执行allDocs()。因此,当您尝试从PouchDB读取时,您无法保证任何文档实际已插入到PouchDB中。也许它会,也许它会赢,但这一切都取决于不同浏览器之间的微妙时序差异,所以你不能指望它。