加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

当模型更新时,我可以防止/延迟AngularJS $摘要的发生

发布时间:2020-12-17 08:11:14 所属栏目:安全 来源:网络整理
导读:有没有办法推迟或延迟消化不良发生? 我有一些改变,我想对一个模型,但我不想要消化,直到模型的所有更改完成。模型中的某些对象具有观察者更新模型上的其他对象以进行更改。 理想的我想 停止$ digest 对模型进行所有更改 启动$ digest $ digest将找到所有
有没有办法推迟或延迟消化不良发生?

我有一些改变,我想对一个模型,但我不想要消化,直到模型的所有更改完成。模型中的某些对象具有观察者更新模型上的其他对象以进行更改。

理想的我想

>停止$ digest
>对模型进行所有更改
>启动$ digest

$ digest将找到所有脏物,并发射观察者。

另一个解决方法是,而不是停止$ digest我可以

>删除观察者
>对模型进行所有更改(消息仍然运行)
>添加被删除的观察者

在添加观察者之后,我需要运行观察器方法来确保模型处于正确的状态。

我只觉得第二个选择似乎是一个黑客。

想法?

这不是一个黑客。它是一个很好的问题,因为大量数据集可以导致$ digest循环运行非常缓慢,当用户快速输入文本或阻止backspace。你肯定可以做 performance tweaks,就像你的$ watch和$ filter函数一样,但有时它更好的想法是使用 debounce function延迟$ digest循环。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读