Angular2 - 将ngModel绑定到属性的引用

时间:2016-06-02 06:07:40

标签: angular angular2-template

我有很长的用户输入列表,并希望将这些输入存储在一个对象中,而不是用HTML拼写出来。我想将这些值绑定到另一个存储用户/客户数据的对象。由于其简单性和功能性,最好使用ngModel。

任何人都知道如何实现这一目标?

以下示例(不工作)。

[Required]

1 个答案:

答案 0 :(得分:12)

不支持。 ngModel只能绑定到组件的属性。我也没有看到通过模板中的字符串文字引用组件属性的方法,没有辅助方法:

这可能对您有用:

  <div *ngFor="#input of inputList">
    {{ input.label }} 
    <input type="text" 
        [ngModel]="getProp(input.bindTo)" 
        (ngModelChange)="setProp(input.bindTo, $event)">
  </div>
  inputList = [
    {
      label: "Enter your name",
      bindTo: "name"
    },
    {
      label: "Enter your email",
      bindTo: "email"
    }
  ];

  getProp(prop) {
    return this[prop];
  }

  setProp(prop, value) {
    this[prop] = value;
  }

<击>

<击>
  <div *ngFor="#input of inputList; #i = index">
    {{ input.label }} <input type="text" [(ngModel)]="inputList[i]">
  </div>

<击>

提示 for =&gt; RC.0 #应替换为let