0

在 IVY 之前,我们可以根据这个很棒的SO 答案触发像这样的更改检测:

ng.probe(getAllAngularRootElements()[0]).injector.get(ng.coreTokens.ApplicationRef).tick()

现在的问题是,我们如何在 Ivy 中实现这一点?

在开发模式下运行时,ng在控制台中输入会显示:

在此处输入图像描述

但我不确定如何使用它来检测根元素的变化?

解决方法

通过在给定组件中注入ChangeDetectorRef,我可以执行以下操作(其中 $0 是开发工具中先前选择的元素):

ng.getComponent($0).changeDetectorRef.detectChanges()

但这不是针对根组件的吗?

4

1 回答 1

1

你可以打电话

ng.markDirty($0)

其中 $0 是 devtools 面板中的选定元素。

在 v9 中,它是applyChanges方法。

于 2019-12-05T09:06:42.860 回答