У меня есть форма, которая обновляет объект, например, так:
компонент. html
<input type="text" [(ngModel)]="user.name" />
<input type="text" [(ngModel)]="user.surname" />
<input type="text" [(ngModel)]="user.age" />
component.ts
user = {
name: null,
surname: null,
age: null
}
теперь в моем компоненте. html У меня есть кнопка сохранения, которая находится в дочернем компоненте
<app-save-btn [user]="user"></app-save-btn>
, а в компоненте app-save-btn
я прослушиваю изменения, используя OnChanges
@Input() user: User;
userForCompare: User;
ngOnChanges() {
if (!this.userForCompare) {
this.userForCompare = {...this.user};
}
console.log(this.userForCompare, this.user);
}
Теперь моя проблема в том, что я получаю первый консольный журнал двух пользовательских объектов, но при обновлении других полей я больше не получаю обновления изменений ..
теперь я знаю, что я могу создать отдельные переменные для хранения каждого значения, но у меня есть около 30 элементов поля, поэтому я не хочу менять свою реализацию на многое ...
любая помощь будет оценена