【发布时间】:2015-07-21 11:34:25
【问题描述】:
我在客户端使用 pouchdb(离子移动应用程序)在服务器端使用 couchdb。
pouchdb创建成功并与couchdb同步后,我需要进行操作。
那么我怎样才能等到 pouchdb 完成初始活动。然后才应该开始我的客户端执行。
目前 pouch 正在以异步方式工作,所以在 pouch 初始化之前的某个时间,我的应用程序开始执行,我收到 pouchdb 错误。
【问题讨论】:
-
您是否尝试过使用 .then。所以说你有 $scope.connect = function(){ var req = {options}; $http(req).success(callback).error(callback).then(callback) } .then 回调函数将在所有数据成功返回并且成功和错误都运行后才会运行。查看更多信息peterbe.com/plog/promises-with-$http
-
谢谢 jess,好的,那么我需要将所有代码放入然后我想在 pouchdb 连接后执行的块中。对吗?
-
是的,应该可以。这是一个例子。 db.get('mittens').then(function (doc) { // 好的,doc 包含我们的文档 }).catch(function (err) { // 哦不!我们遇到了错误 });
-
与 Angular 类似,它使用承诺系统。你可以在这里读更多关于它的内容。 pouchdb.com/guides/async-code.html
-
希望能成功。我将此方法与 mongodb 一起使用,但我认为它应该可以工作