В демонстрационных целях я создал это упрощенное приложение Angular, которое позволяет пользователям составлять список людей: https://plnkr.co/edit/1RFGlXgHLwik02MvbhCz?p=preview
Шаблон:
<form #peopleForm="ngForm">
<div *ngFor="let person of people">
Name: <input type="text" name="name" placeholder="Name" [(ngModel)]="person.name">
</div>
</form>
Составная часть:
export class App {
people = [
{
name: 'Bob',
},
{
name: 'Alice',
}
];
constructor() { }
addPerson() {
this.people.push({name: ''});
}
}
У него две ошибки:
- Элементы списка сбрасываются в пользовательском интерфейсе при нажатии кнопки «Добавить человека».
- Имя последнего пользователя отображается дважды
У меня есть базовый JSON, который также печатается на странице, и он выглядит правильно, но остальная часть пользовательского интерфейса неверна. Может ли кто-нибудь сказать мне, что я делаю неправильно?
Обновление: по какой-то причине он работает должным образом, когда я удаляю внешний тег <form>
. Кто-нибудь знает, почему?