【发布时间】:2020-01-14 01:11:42
【问题描述】:
我是 Angular 新手,我正在学习 Angular 6。我了解 ngModel。但是,当我在试验 ngModelChange 时,提出了一些问题。
我有一个 html 元素 HTML
<input #input type="text" [value]="name" [(ngModel)] ="name" (ngModelChange) ="change(input.value)"/>
打字稿
change(event :any) {
this.name = event;
console.log(this.name);
}
更改 input 中的值后,我可以通过 name 属性看到更改。
当我将html代码更改为
HTML
<input #input type="text" [value]="name" [ngModel] ="name"
(ngModelChange)="change(input.value)" />
{{ name }}
TS
change(event :any) {
this.name = event;
console.log(this.name);
}
它在控制台和 UI 中正常工作。
问题一
<input #input type="text" [value]="name" [(ngModel)] ="name"
(ngModelChange) ="change(input.value)"/>
&
<input #input type="text" [value]="name" [ngModel] ="name"
(ngModelChange)="change(input.value)" />
都一样吗??
问题2。
当我删除 [ngModel] 指令时。 ngModelChange 没有被触发。是否必须拥有 [ngModel]?如果是,为什么?
HTML
<input #input type="text" [value]="name"
(ngModelChange)="change(input.value)" />
<br/>
<br/>
{{ name }}
TS
change(event: any) {
this.name = event;
console.log(this.name);
}
这将是一个很大的帮助。 提前致谢。
【问题讨论】:
标签: angular typescript