私は、テキストボックスで入力を受け取り、同じものを列挙する簡単な作業をしようとしています。サンプルコードは、以下である: Example.html:ngFor JSONオブジェクト - Angular 2 ngmodelの視点
<label>Name:</label>
<input type="text" [(ngModel)]="user.name" placeholder="Enter a name here">
<!-- conditionally display `yourName` -->
<button (click)="getData(user)">Add</button>
<hr>
<ul>
<li *ngFor="let rec of record">{{rec.name}}</li>
</ul>
そしてexample.tsのコードは以下である:
record:any[]=[];
user={"name":""};
getData(username:any){
this.record.push(username);
console.log(JSON.stringify(this.record));
}
iが直面
Thの問題であり、iは、第2の入力を挿入すると、さらに第一入力は両方とも同じngModelを参照するので、2番目に入力が変化します。たとえば、「GG」を入力として追加すると、最初のレコードはGGになります。 「HH」と入力すると、まずGGがHHに変化し、結果はHHとHHになります。私が間違っていた箇所を理解してこれを解決するのを手伝ってください。
コードを追加して、入力を追加する方法は? FormGroupの配列を追加する方法については、https://angular.io/guide/reactive-formsの説明があります。 –
@AntonM。私は入力ボックスに単一の名前を追加します。 addをクリックすると、リストに渡されます。同じ入力ボックスに、別の入力も追加します。 – Gayathri