当使用 angularjs 提供的 deferred 方法并查询数据库本地存储时,“resolve”似乎不起作用。请参阅以下示例。"then" 动作永远不会被触发。当尝试使用 setTimeout 而不是“Person.all()”指令时,它可以工作。
var defer = $q.deferred();
Person.all().list(null, function (persons) {
defer.resolve(persons);
});
defer.promise.then(function (persons) {
console.log('resolved');
});
感谢您的帮助。