[英]How to make key value of map function increment for each element in JavaScript
我要映射出一個字段數組中的每個字段,以便每個字段都有一個從1 ... n個字段開始的id。
在將所有字段值存儲在數組中時,會使用它,並且當更改字段時,我希望data [index]進行相應的更新。
這是我的地圖功能代碼
{this.state.fields.map((field) => {
return (
<IssueInputRow
labelText={field.name}
key={i} //want this to increment by 1 for each field, starting a 0
handler={this.handler}
/>
);
})}
我希望每個字段的鍵從0開始增加1。因此,如果有3個字段,則相應字段的鍵應為0,1,2。
請讓我知道這是怎么回事
給map
的函數提供的第二個參數是數組索引,因此您可以使用它。
{this.state.fields.map((field, i) => {
return (
<IssueInputRow
labelText={field.name}
key={i}
handler={this.handler}
/>
);
})}
在JavaScript中, 地圖功能具有兩個參數,一個是項目,另一個是鍵。 您需要始終以其他方式提供這兩個參數,否則它將在控制台中顯示錯誤。 Item將返回數組的值,而Key將返回從0開始的下標值。
你可以這樣->
{this.state.fields == undefined ? '' : this.state.fields.map((field, i) => {
return (
<IssueInputRow
labelText={field.name}
key={i} //Here key (i) will give you the value starting from 0
handler={this.handler}
/>
);
})}
為了更好地了解地圖,請參考-> 在此處輸入鏈接描述
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.