[英]How can I change the name of a parameter in an array.map?
我有点怀疑。 如何根据 map 中的元素数量将标记参数更改为 marker1、marker2、marker3?
我有这个,但我希望对于 map 的每个元素,每个标记都有一个 +1
{teams.map((team) =>
<pointer
marker={marker1}
例如.map的第一个元素有参数{marker1},第二个{marker2},第三个{marker3}等等
取决于您希望如何处理点击,但一般来说,您可以在映射teams
数组时使用team
的index
。
例子:
teams.map((team, index) => <pointer marker={`marker-${index + 1}`} />)
或者,如果您更愿意将值直接传递给点击事件:
teams.map((team, index) => (
<pointer onClick={() => handleClick(`marker-${index + 1}`)} />
))
在执行.map()
时,确保还在映射组件上设置唯一key
。
希望这会有所帮助!
如果标记是一些变量,一个解决方案可以是您可以制作一个标记变量数组,例如let markersArray = [marker1, marker2, ...]
然后使用 map 方法中的索引来索引每个循环中的标记变量,例如
{
teams.map((team,index) =>
<pointer
marker={markersArray[index]}
}
Let your array is
**const markersArray = [....]**
In jsx,
markersArray.map((team, index) => {
<pointer
marker={markersArray[index]}
})
您可以根据索引识别object。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.