繁体   English   中英

如何更改 array.map 中参数的名称?

[英]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数组时使用teamindex

更多关于.map()

例子:

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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM