Почему мы не можем использовать [(ngModel)] и значение в том же входном теге в угловых 6 - PullRequest
0 голосов
/ 08 октября 2018

Мой HTML-тег:

<input matInput placeholder="Vehicle Number" name="vehicleNo" [(ngModel)]="vehicleNo" value="vehicle.vehicleNo" >

Мне нужно автоматически заполнить поле ввода, и если я ввожу новую вещь, к ней нужно получить доступ в файле component.ts.

Ответы [ 2 ]

0 голосов
/ 08 октября 2018

В angular, если вы используете ngModel для привязки данных, вам не нужно использовать атрибут value, он автоматически связывает данные.

// в файле ts

export className extends OnInit{
    vehicle: any;

    ngOnInit(){

       this.serviceName.functionName().subscribe(
           data=>{
               this.vehicle=data;
           }error=>{
               //whatever logic you want to place
          }
      );
   }
}

// в html-файле

<input matInput placeholder="Vehicle Number" name="vehicleNo" [(ngModel)]="vehicle.vehicleNo">

// если вы определяете его таким образом vehicleObj = { vehicleNo:this.vehicleNo }

, тогда html-файл должен быть

<input matInput placeholder="Vehicle Number" name="vehicleNo" [(ngModel)]="vehicleObj .vehicleNo">
0 голосов
/ 08 октября 2018

это выражение не будет оцениваться как выражение javascript value="vehicle.vehicle No" так вы делаете привязку свойства [value]="vehicle.vehicle No"

просто установите vehicleNo в vehicle.vehicleNo и вход будет обновляться, вам не нужно делатьЭто не то, что сделал ngModel.

...