[(ngModel)]如何处理Angular 2中的单向数据流

[(ngModel)]如何处理Angular 2中的单向数据流,angular,2-way-object-databinding,Angular,2 Way Object Databinding,Angular 2支持单向数据流,一次单向。双向数据绑定[(ngModel)]在Angular2中是如何工作的?Angular2将[(ngModel)]=myName理解为属性+事件的绑定和 [ngModel]=“我的名字”,以及 (ngModelChange)='updateMyNameValue(myName) 他们的单向数据流策略也可以采用扩展版本,例如,当值更改时,通过输入事件显式设置范围变量,反之亦然,因此此语法版本的策略看起来几乎像 myName = ''; function upd

Angular 2支持单向数据流,一次单向。双向数据绑定[(ngModel)]在Angular2中是如何工作的?

Angular2将
[(ngModel)]=myName
理解为
属性+事件的绑定和

  • [ngModel]=“我的名字”
    ,以及
  • (ngModelChange)='updateMyNameValue(myName)
  • 他们的
    单向数据流
    策略也可以采用扩展版本,例如,当值更改时,通过
    输入
    事件显式设置范围变量,反之亦然,因此此语法版本的策略看起来几乎像

    myName = '';
    function updateMyNameValue(elem) {
       // find scope variable of `myName` and update it
       // find element in view and update it
    }
    // <input type="text" onchange="updateMyNameValue(this)" value="" />
    

    那么,在哪里实现事件处理程序呢?在组件内部?@Shivanka否,它们对每个表单控件都有自己的方式,例如
    输入、选择、多个选择等。
    以在其指令中实现事件处理程序。在我希望在双向数据绑定中重写事件处理程序的情况下,如何实现这样的功能。@Shivanka您可以通过设置
    (ngModelChange)
    来显式设置事件处理程序。如果你还不清楚我在说什么,试着点击我提供的文档链接。。这可能会有帮助。
    [(x)]="e" <==> [x]="e" (xChange)="e=$event"