如何知道我正在使用的 array.map 的哪个迭代?

Posted

技术标签:

【中文标题】如何知道我正在使用的 array.map 的哪个迭代?【英文标题】:How to know which iteration of the array.map I'm on? 【发布时间】:2021-12-15 20:44:33 【问题描述】:

我是 react-native 的新手。 我想使用array.map() 在 UI 中渲染出一些 jsx。 我正在循环 API 响应,如下所示:

chosenProducts = [
id:1 , name:"carpet" ,
id:24 , name:"toy" ,
id:28 , name:"laser" ,
id:137 , name:"map" ,
]

我使用chosenProducts.map((prod)=>some jsx) 来映射数组。 但我想为每个产品添加一个键值对 ex: order:1 以便能够在 UI 中订购它们。

如何在不更改 API 响应的情况下动态添加订单?

注意:我使用的是 TypeScript

ps:我将使用 order 属性来动态设置产品样式。所以这不仅仅是订购!

【问题讨论】:

数组映射回调有第二个参数表示当前迭代索引:chosenProducts.map((prod, index)=>some jsx) 更多:developer.mozilla.org/en-US/docs/Web/javascript/Reference/… 【参考方案1】:

map函数解构中的第二个参数是数组中item的索引

chosenProducts.map((prod, id)=>some jsx ) // add id here

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

【讨论】:

以上是关于如何知道我正在使用的 array.map 的哪个迭代?的主要内容,如果未能解决你的问题,请参考以下文章

如何知道哪个uiview用户正在使用

如何知道我正在使用哪个 iOS 开发者程序? [关闭]

如何知道我正在检查哪个组件?

如何知道正在点击哪个覆盖项?

sql查询迭代行并进行计算

如何知道双 SIM 安卓手机中哪个 SIM 卡正在消耗移动数据?