$ watch行为取决于承诺价值

时间:2016-08-25 09:00:17

标签: javascript angularjs promise angular-promise watch

我有一个在调用$http.get服务(promise)的控制器初始化时调用的函数。此承诺从Web服务中检索项目列表。我对列表分页的属性也有一个$watch

我的问题是我在$watch中所做的事情取决于承诺(并且$watch没有看到它,列表只加载一次)。因此,在加载页面时,调用webservice,然后调用$watch(在列表初始化之前),然后我得到了我的承诺的回报。那么$ watch中发生的事情不是正确的行为。

有没有办法让$watch等待承诺返回?

1 个答案:

答案 0 :(得分:0)

最好发布一些代码以获得正确答案。

我建议您在分页对象上使用$watchCollection,在第三个参数$watch上使用objectEquality = true

要更新从Web服务加载的列表,不应在promise对象上使用$watch,应使用.than() promise方法。