使用ChangeDetectionStrategy.OnPush策略来重新呈现组件,以实现价值变化

问题描述

我有mat-option可以动态更新其值,我需要在值更改时对其进行更新。不幸的是,它具有OnPush ChangeDetectionStrategy,并且不会自动检测到它。

当前,我使用* ngFor进行了解决:

<mat-option *ngFor="let value of [dynamicValue]" [value]="value">{{value}}</mat-option>

此代码创建一个带值的元素表,并以此方式检测“ dynamicValue”的更改,并在每次更改时重新创建一个mat-option组件。有更好的方法吗?

我知道我可以做parentSelect.options.notifyOnChanges(),但是在我的代码中这样做很复杂,因为实际上dynamicValue是一个表单控件,它使用嵌套模板,因此我需要手动引用所有元素管理formControl.valueChanges的订阅并循环调用notifyOnChanges,所以我只想在视图中这样做。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...