更多信息:
我有一个物品清单。每个项目都是MyClass
的一个实例。 MyClass
有一个属性text
和一个返回该属性的方法someMethod()
。
我有一个*ngFor
,该页面列出了页面上的所有项目,当我单击其中的一项时,(click)="currentItem = item"
被执行,而[value]="someMethod()"
实际上是[value]="currentItem.someMethod()"
,因此选中项目的文本被写入到文本区域。
我正在使用反应式表单,并且模板中包含以下内容:
<textarea formControlName="myTextarea" [value]="someMethod()" ...
页面呈现并且someMethod()
输出一个字符串时,我可以看到该字符串显示在文本区域内。
但是,value
的{{1}}属性未更新。为什么?
答案 0 :(得分:1)
您可以将[(ngModel)]与反应形式一起使用。
<form [formGroup]="form">
<input name="fname" formControlName="first" [(ngModel)]="example.first">
<input name="lname" formControlName="last" [(ngModel)]="example.last">
</form>
export class App {
form: FormGroup;
example = { fname: '', lname: ''}
constructor(builder: FormBuilder) {
this.form = builder.group({ first: '', last:''})
}
}
答案 1 :(得分:0)