有什么方法可以在不引起 $digest 循环的情况下调用 $q notify 吗?
Any way to call $q notify without causing $digest cycle?
我有一个 $digest 周期大约需要 5 毫秒的应用程序,我在我的应用程序中经常使用 $q.defer
和 deferred.notify
。问题是每次调用 deferred.notify
时,都会安排一个摘要周期,并导致 angular 运行 它持续 5 毫秒。
因此,当我从服务器获取几千行数据时(通过 WebSocket,数据一个接一个地接收),应用程序可以使用 100% CPU 并且变得非常无响应。我对这些数据所做的唯一一件事就是将它们保存到 IndexedDB 中。
有什么方法可以在不安排 $digest 周期的情况下使用 $q
和 notify
吗?
我正在考虑对 WebSocket 和 IndexedDB 相关代码使用不同的 promise 实现,但我不喜欢有两个 promise 实现的想法,而且几乎不可能知道长时间后会返回哪种 promise链.
我有一个 $digest 周期大约需要 5 毫秒的应用程序,我在我的应用程序中经常使用 $q.defer
和 deferred.notify
。问题是每次调用 deferred.notify
时,都会安排一个摘要周期,并导致 angular 运行 它持续 5 毫秒。
因此,当我从服务器获取几千行数据时(通过 WebSocket,数据一个接一个地接收),应用程序可以使用 100% CPU 并且变得非常无响应。我对这些数据所做的唯一一件事就是将它们保存到 IndexedDB 中。
有什么方法可以在不安排 $digest 周期的情况下使用 $q
和 notify
吗?
我正在考虑对 WebSocket 和 IndexedDB 相关代码使用不同的 promise 实现,但我不喜欢有两个 promise 实现的想法,而且几乎不可能知道长时间后会返回哪种 promise链.