【问题标题】:ngFor with Data binding?ngFor 与数据绑定?
【发布时间】:2016-05-01 14:34:10
【问题描述】:

我有一个 *ngFor 来获取英雄列表。 现在,如果我改变一个英雄的值,我的英雄也应该改变,你怎么做,最好的方法......

     <li *ngFor="#hero of heroes">
      <input type="text" [value]="hero.name"/>
    </li>

我只知道创建 (change)="UpdateListByItem(item)" 的方法,调用方法,但没有办法为所有项目创建双向数据绑定吗?

【问题讨论】:

    标签: data-binding typescript angular


    【解决方案1】:

    您可以使用 ngModel 指令进行两种方式的数据绑定

    <li *ngFor="#hero of heroes">
      <input type="text" [(ngModel)]="hero.name"/>
    </li>
    

    每当您更改输入文本时,相应的英雄名称都会更改。

    更多信息可以在这里找到https://angular.io/docs/ts/latest/guide/forms.html

    【讨论】:

    • 您还可以通过在模板顶部添加 {{heroes|json}} 来调试所反映的更改
    • 英雄有新元素怎么办?列表也应该更新吗?
    【解决方案2】:

    您可以使用ngModel 自动执行此操作

    <li *ngFor="#hero of heroes">
      <input type="text" [(ngModel)]="hero.name"/>
    </li>
    

    【讨论】:

      【解决方案3】:

      看看这个AnswerngModel 允许更改个人名称并立即更新列表。

          <ul>
              <li *ngFor="#hero of heros">
                  <input type="type"  [value]="hero.name"  [(ngModel)]="hero.name" />
              </li>
          </ul>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-10-04
        • 2018-10-16
        • 1970-01-01
        • 1970-01-01
        • 2020-03-08
        • 2017-01-13
        • 2020-07-10
        • 2019-01-23
        相关资源
        最近更新 更多