网站搜索

html - 类型错误: “设置只读属性 'value'”


我正在尝试更新输入值,但它返回此错误:TypeError: "设置只读属性 'value'" 我在 Angular 中创建了一个函数来尝试修改该值:

modifyValue(searchCenter, centerId){
    searchCenter.value = centerId._id;
  }

centerId 是我想分配给输入值的值。

而这是 HTML:

<p>
      <label>Search a center</label>
      <input type="text" name="searchCenter" class="form-control" #searchCenter='ngModel' [(ngModel)]="term" [(ngModel)]="user.center" required/>

    </p>

   <div class="center panel panel-default"  *ngFor="let center of centers | filter:term">
      <div class="panel-body">

          <button (click)="modifyValue(searchCenter, center)" type="button" class="centers-button">{{center.name}}, {{center.community}},
          {{center.municipality}}</button>

      </div

>

答案#1

问题

你正试图设置 string 对象的 value 属性,这是错误的。string 没有任何名为 value 的属性。

修复

您可能正在尝试设置 term 的值。您有两种选择可以做到这一点 -

  1. 第一次更改

HTML中的更改

#searchCenter='ngModel'

到

#searchCenter

2. 第二个选项是在 ts 文件中进行更改

modifyValue(searchCenter, centerId){
    this.term = centerId._id;
  }