Unl*_*LAD 2 javascript arrays mapping reactjs
我正在尝试查找当前元素的 id,以便当我执行 操作时onClick,我可以仅操作我单击的映射元素。
测试点击
const testClick = (event) => {
console.log(event.person.id)
}
Run Code Online (Sandbox Code Playgroud)
数据:
{
"ExampleData": [
{
"id": 0,
"name": "Joe Doe",
"email": "joedoe@gmail.com"
},
{
"id": 1,
"name": "John Smith",
"email": "johnsmith@example.com"
},
]
Run Code Online (Sandbox Code Playgroud)
}
映射:
const data = exampleData.ExampleData
{(data|| {}).map((person, i) => {
return (
<DataContainer testClick={testClick} person={person}/>
)
})}
Run Code Online (Sandbox Code Playgroud)
它映射 DataContainer 子级的次数与对象数组中的项数一样多。
但现在,我试图有一个 onClick 来检测我按下的特定映射项目。正如您所看到的,我正在将testClick函数传递给 DataContainer,并在其中尝试控制台记录我所按下的用户的当前 ID。
const testClick = (e) => {
console.log(e.id)
}
Run Code Online (Sandbox Code Playgroud)
例如:
onClick - if ID === currentID --- do something
Run Code Online (Sandbox Code Playgroud)
添加一个箭头函数作为单击事件的处理程序并将 id 作为参数传递:
testClick={()=>testClick(person.id)}
Run Code Online (Sandbox Code Playgroud)
如果您还需要您可以执行的活动:
testClick={(event)=>testClick(event,person.id)}
Run Code Online (Sandbox Code Playgroud)
和
const testClick = (event,id) => {
console.log(event, id)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2201 次 |
| 最近记录: |