Как прикрепить входные данные, поданные к другому в Angular 2, только если они нетронуты?

У меня есть два поля ввода:

<input type="text" [(ngModel)]="title" name="title">
<input type="text" [(ngModel)]="og_title" name="og_title" value="{{ title }}">

Я хочу сделать og_title поле равно title пока og_title не является нетронутым.

Как я могу сделать это в Angular 2 (Угловой 7)

2 ответа

Решение

Я думаю, что было бы лучше, если бы вы использовали Reactive формы вместо двухстороннего связывания с ngModel, но все же это будет работать:

<input type="text" [(ngModel)]="title" name="title" (input)="titleChanged()">
<input type="text" [(ngModel)]="og_title" name="og_title">

и в файле TS:

titleChanged(){
 if(<code to check if og_title is pristine>){
  this.og_title = this.title;
 }
}

заменить <code to check if og_title is pristine> с логикой, которая включает в себя имя формы и нетронутые условия поля ввода

Вы можете назначить на ngModel

HTML

<input type="text" [(ngModel)]="title" name="title" (input)="assignToModel($event)">
    <input type="text" [(ngModel)]="og_title" name="og_title" value="{{ title }}">

TS:

assignToModel(event){
this.og_title = event.target.value;
}
Другие вопросы по тегам