我試圖ion-input在用戶點擊“ ”時動態創建元素。然后我想將所有輸入值插入到一個陣列中。我創建了輸入,但我可以將[(ngModel)]屬性分配給新元素。我怎樣才能做到這一點?這是創建新元素的方法:
newElement() {
const item = document.createElement('ion-item');
const input = document.createElement('ion-input');
input.placeholder = '????? ?????';
input.type = 'text';
input.required = true;
input.name = 'serialNumbers';
input.className = 'input inputSerial';
input.ngModel='serialNumbers';
const div = document.getElementById('newElements');
console.log(item);
item.appendChild(input);
div.appendChild(item);
}
這是第一次加載頁面時的默認輸入:
<ion-item>
<ion-input
type="text"
expand="block"
placeholder="????? ?????"
required
name="serialNumbers"
[(ngModel)]="serialNumbers"
></ion-input>
該serialNumbers陣列只接受預設輸入的值
uj5u.com熱心網友回復:
您需要為此使用角度模板。不建議使用 angular 直接操作 DOM。改用結構指令。
在您的組件類中,有一個輸入陣列
serialNumbers: any = [];
在組件中,
<ion-item *ngFor="let serialNumber of serialNumbers;">
<ion-input
type="text"
expand="block"
placeholder="????? ?????"
required
name="serialNumbers"
[(ngModel)]="serialNumber"
></ion-input>
在你的 newElement()
newElement(){
this.serialNumbers.push('');//default value.
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/375625.html
上一篇:typescripttsc-p僅在dockerbuild中失敗
下一篇:通用型別是型別腳本
