为我从 api 响应中获得的每个项目制作一个唯一的编号 ID
make a unique number id for every item I get from the api response
所以,在这里我试图通过从 API 获得的响应进行映射,然后在从 API 获得项目之前,我对其进行了静态测试,并制作了一个独特的从 {1} 开始的每个项目的编号 ID,现在我正在尝试找到一种方法,为我得到的每个项目制作某种 for 循环,为每个项目提供一个从 {1} 开始的唯一编号 ID,我该如何实现?
<div className="items">
{this.state.items.map(i =><a href="/" id={1} onClick={this.targetValue} className={this.state.selected === "1" ? "selected" : ""}>{i.name}</a>
</div>
map 函数实际上给你一个索引作为第二个参数。
<div className="items">
{this.state.items.map((i, idx) =><a href="/" id={idx} onClick={this.targetValue} className={this.state.selected === "1" ? "selected" : ""}>{i.name}</a>
</div>
.map 为您提供索引,您可以将其用于唯一 ID。由于您希望 id 从 1 开始,因此您需要 index+1 因为索引从 0
开始
<div className="items">
{this.state.items.map((i, index) => <a href="/" id={index+1} onClick={this.targetValue} className={this.state.selected === index +1? "selected" : ""}>{i.name}. </a>
</div>
所以,在这里我试图通过从 API 获得的响应进行映射,然后在从 API 获得项目之前,我对其进行了静态测试,并制作了一个独特的从 {1} 开始的每个项目的编号 ID,现在我正在尝试找到一种方法,为我得到的每个项目制作某种 for 循环,为每个项目提供一个从 {1} 开始的唯一编号 ID,我该如何实现?
<div className="items">
{this.state.items.map(i =><a href="/" id={1} onClick={this.targetValue} className={this.state.selected === "1" ? "selected" : ""}>{i.name}</a>
</div>
map 函数实际上给你一个索引作为第二个参数。
<div className="items">
{this.state.items.map((i, idx) =><a href="/" id={idx} onClick={this.targetValue} className={this.state.selected === "1" ? "selected" : ""}>{i.name}</a>
</div>
.map 为您提供索引,您可以将其用于唯一 ID。由于您希望 id 从 1 开始,因此您需要 index+1 因为索引从 0
开始 <div className="items">
{this.state.items.map((i, index) => <a href="/" id={index+1} onClick={this.targetValue} className={this.state.selected === index +1? "selected" : ""}>{i.name}. </a>
</div>