微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

angular2 – 如何强制组件的重新渲染在Angular 2?

如何强制组件在Angular 2中重新渲染?
为了调试目的使用Redux我想强制组件重新呈现它的视图,是可能吗?

问候

肖恩

渲染在更改检测后发生。要强制更改检测,以便将更改的组件属性值传播到DOM(然后浏览器将在视图中呈现这些更改),以下是一些选项:

> ApplicationRef.tick() – 类似于Angular 1的$ rootScope。$ digest() – 即检查完整的组件树
> NgZone.run(callback) – 类似于$ rootScope。$ apply(callback) – 即,评估Angular 2区域内的回调函数。我想,但我不知道,这最终在执行回调函数后检查完整的组件树。
> ChangeDetectorRef.detectChanges() – 类似于$ scope。$ digest() – 即,只检查此组件及其子组件

您可以将ApplicationRef,ngzone或ChangeDetectorRef注入到您的组件中。

对于您的特定场景,如果只有一个组件已更改,我建议使用最后一个选项。

原文地址:https://www.jb51.cc/angularjs/146259.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐