我们已经构建了一个基于PouchDB的小脚本和数据库,以便在所谓的"产品树"中显示我们客户的所有产品。 您可以在此处找到产品树:http://www.bodyrevitaliser.nl/nl/service/product-tree/
正如您所看到的,树仅在Chrome中正确加载。如果你在safari和Firefox中检查控制台,那么DB似乎也被加载了,但似乎阻止了树本身的加载。
你有什么想法?可能导致此问题和解决方案的任何想法。
答案 0 :(得分:0)
您的代码存在的问题是您对promises的使用不正确。我强烈建议您阅读此博文:We have a problem with promises。我知道它很长,但阅读整篇文章是值得的。
特别是,请阅读名为" WTF的部分,如何将forEach()与promises一起使用?",因为这正是您所犯的错误。你正在$.each
内进行一堆插入,然后你在同一个函数内立即执行allDocs()
。因此,当您尝试从PouchDB读取时,您无法保证任何文档实际已插入到PouchDB中。也许它会,也许它会赢,但这一切都取决于不同浏览器之间的微妙时序差异,所以你不能指望它。