【发布时间】:2026-01-08 07:05:01
【问题描述】:
假设我有这个设置:
模板:
<input [(ngModel)]="myValue" type="text" />
<button (click)="addText">Click me</button>
{{myValue}}
代码:
addtext()
{
this.myValue='test';
}
如果我单击按钮,输入字段保持为空,但 {{myValue}} 会更新。 如何将文本添加到输入字段(或者更好地更新它,因为 nGModel 已经具有实际值)?
编辑:
单击按钮时,会在用户添加/选择一些数据的位置显示一个子组件。当子组件被填充时,会发出一个带有子组件数据的事件。 父级通过“onFilled”事件做出反应并更改模型。但是由于 View 不知道变化,所以输入没有更新(即使 ng-reflect-model 也是正确的)。
所以我真正的问题是:如何强制 Angular 在视图上运行更新/重新渲染它?
发射部分:
孩子:
@Output myEmitter:new EventEmitter<object>();
filled(){
this.myEmitter.emit({value:'Test'});
}
家长: (myEmitter)='onMyEmitter($event)' 添加到输入
onMyEmitter(value) {this.myValue = value}
【问题讨论】:
标签: angular typescript