“名称和[(ngModel)]=”之间有什么区别;名称“;在Angular2表单输入中?

“名称和[(ngModel)]=”之间有什么区别;名称“;在Angular2表单输入中?,angular,angular2-forms,Angular,Angular2 Forms,我有点困惑,因为有些教程使用来获取输入,而有些教程使用[(ngModel)]。两者之间的有效区别是什么?\xxx #xxx允许您获取元素引用 <input #inp (change)="foo = inp.value"> NgModel <input [(ngModel)]="foo"> 是的缩写形式 [ngModel]="foo" (ngModelChange)="foo = $event" 这表明它是用于双向绑定的 提示 #xxx返回一个组件或指令实例,如果元素

我有点困惑,因为有些教程使用
来获取输入,而有些教程使用
[(ngModel)]
。两者之间的有效区别是什么?

\xxx

#xxx
允许您获取元素引用

<input #inp (change)="foo = inp.value">
NgModel

<input [(ngModel)]="foo">
是的缩写形式

[ngModel]="foo" (ngModelChange)="foo = $event"
这表明它是用于双向绑定的

提示

#xxx
返回一个组件或指令实例,如果元素不是普通DOM元素而是角度组件或应用了角度指令。

名称语法是一个引用html对象的模板引用,更多信息可以在角度文档中找到:


[(ngModel)]正在对元素值设置双向绑定并将其分配给变量。

模板引用变量仅用于访问元素的dom属性。 因此,对于两个绑定或任何更改,我们需要编写
-> 但是,通过使用ngmodel绑定(有助于角度双向数据绑定),可以通过以下方式在短时间内完成:
->

欢迎来到StackOverflow。注意:代码示例的标记可能不正确,需要修复:
[(ngModel)]="foo"
[ngModel]="foo" (ngModelChange)="foo = $event"