誰かがこれを調べることができますか?私は、ボタンのクリック時にオブジェクトにデータを格納する必要があります。それはビューに表示される必要があります。再び、ユーザがドロップダウンボックス内の他の値を選択してテキストボックスにデータを入力すると、ボタンの上で、 を再度クリックすると、以前に保存された値をクリアすることなく同じオブジェクトにデータを保存する必要があります。ボタンをクリックして前の値を消去せずに配列に値を格納する問題
今、私はオブジェクトにvaueを保存して表示することができます。しかし、私が持っている問題は、それはボタンクリックで同じ値を2回保存していることです。別の値を選択した場合、以前の値は新しい値 で上書きされますが、アレイサイズはクリアされずに増加しています。
誰かが私がどこに間違っているか教えていただけますか?
ここは自分のHTMLファイルです。ここ
<md-select [placeholder]="result" [(ngModel)]="selectedItemType">
<md-option *ngFor='let attr of result' [value]="attr.fieldType" ng-selected="attr.fieldType"> {{attr.attribute}}
</md-option>
</md-select>
</div>
<div *ngIf="selectedItemType =='string' || selectedItemType =='decimal' || selectedItemType == 'text' || selectedItemType == 'integer'">
<input placeholder="Enter Text" type="text" class="input" [(ngModel)]="txtEntered">
</div>
<button *ngIf="selectedItemType" md-raised-button (click)= "Add()" color="accent" >Add</button>
<span *ngFor='let selVal of finalValues'> {{selVal.attributeName}} {{selVal.value}}
</span>
私typescriptですクラスは、ここで
export class test{
Add() {
this.addToList();
}
addToList() {
this.addValues.push(this.selectedItemType, this.txtEntered);
this.finalValues = this.addValues.map(({attributeName, value}) =>
new SelectedList(this.selectedItemType, this.txtEntered));
}
}
である私のモデルクラスは
export class SelectedList {
constructor(
public attributeName: any,
public value: any
) {}
}
私はselectedItemTypeとtxtEnteredの値をオブジェクトに代入しようとしていました。私が必要とするのは、ユーザーがボタンをクリックする度にこれらの値を保存する必要があるということです。次に、いくつかのリストを使用してUIにvaueを表示する必要があります。ユーザーが別の値を選択してボタンを再度クリックすると、以前の値を削除せずに新しい値を追加することができます。 – user2083386
私の答えを更新しました。それがあなたが探しているものに近いものかどうかを見てください。 – amal
すごいよ!それはうまくいった。ありがとう – user2083386