【问题标题】:ngModel not working along with valuengModel 不能与价值一起工作
【发布时间】:2018-06-13 18:30:31
【问题描述】:

我有这个更新用户个人资料页面,加载时将显示已经存在的客户名称,并且可以由客户更新。 如果我删除 ngModel 值正在显示,但是当我添加 ngModel 时,它不起作用。

这是我的代码。谁能告诉我我的错误是什么。

   <form [formGroup]="form" (ngSubmit)="saveEntry()">
        <ion-list *ngFor="let user of foundUser">
            <ion-item>
                <ion-label floating>Name</ion-label>
                <ion-input type="text" name="customer_name" formControlName="customer_name" value="{{user.name.last}}" [(ngModel)]="data.customer_name"></ion-input>
            </ion-item>
        </ion-list>
    </form>

【问题讨论】:

  • 使用
  • @Ajay 值来自 *ngFor = let user...
  • 您想在表格中显示客户姓名?这就是你使用 ngModel 的目的吗?
  • 我必须更新包含已存在值的表单
  • @nas 使用 。数据包含什么以及它与用户有何不同?

标签: angular ionic-framework ionic2 ionic3


【解决方案1】:

使用 ngModel 时不需要值

<ion-input type="text" name="customer_name" formControlName="customer_name" [(ngModel)]="data.customer_name"></ion-input>

【讨论】:

  • 但是我需要显示客户名称的值。它的更新表单页面
【解决方案2】:

因为您没有在初始化时为 data.customer_name 对象分配值。 如果您想使用data.customer_name 作为user.name.last 的值,请尝试以下方式

<ion-input type="text" name="customer_name" formControlName="customer_name" 
 value="{{data.customer_name = user.name.last}}" [(ngModel)]
 ="data.customer_name"></ion-input>

我不知道您为什么使用data.customer_name 而不是user.name.last。因为如果你想要双向数据绑定,你可以直接在ng-model中使用user.name.last而不使用value和一个新对象data.customer_name

【讨论】:

  • 我收到此错误:未捕获错误:模板解析错误:解析器错误:绑定不能在 [{{data.customer_name = user.name.last}}] 中的第 22 列包含分配: ///AppModule/ProfilePage.html@50:97 ("> ]value="{{data.customer_name = user. name.last}}" [(ngModel)]="data.customer_name">
  • 去使用init而不是value
  • @nas 你初始化你的模型对象了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-12-16
  • 1970-01-01
  • 1970-01-01
  • 2022-08-09
  • 2015-10-20
  • 1970-01-01
  • 2020-01-20
相关资源
最近更新 更多