[英]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.