在ChangeDetectionStrategy.OnPush组件的分支内使用ChangeDetectionStrategy.Default组件

时间:2016-12-16 14:39:56

标签: angular angular2-changedetection

使用具有组件的分支内部的默认更改检测策略的组件是否可接受,这些组件是使用OnPush更改检测策略定义的?

我们假设OnPush组件具有一些组件层次结构,它们也是OnPush。但是我们需要添加可重用的组件,该组件显示当前时间,位于此层次结构底部的某个位置。

为了使时间组件工作,我必须在其中使用changeDetectionRef.markForCheck,它实际上强制angular检查该组件的所有祖先。

这是一个很好的做法吗?有什么办法可以避免吗?

我知道我可以将我的更改时间逻辑移到顶层组件,并传递当前时间值,但我不想这样做,因为这个组件是可重用的,我必须复制这个逻辑一些地方,从顶级组件到这个也是一个太大的方式。

0 个答案:

没有答案