【发布时间】:2021-09-07 02:59:38
【问题描述】:
我试图将事件和其他一些数据(元素的索引)都传递给 React 应用程序中的事件处理程序。我发现 here 我应该创建一个 higher-order 函数,但我没有得到一个令人愉快的结果。这是我的代码的 sn-p:
const changeNameHandler = (index) => {
return (event) => {
console.log(index, event);
};
};
let persons = null;
if(showValuesState) {
persons = (
<div>
{
personsState.map((person, index) => {
return <Person
name = {person.name}
age = {person.age}
click = {() => deletePersonHandler(index)}
key = {index}
changeName = {() => changeNameHandler(index)()}/>
})
}
</div>
);
}
我试图在获取事件的同时将索引传递给changeNameHandler函数,但是值来自事件变量 console.log(index, event) 声明仍然是 undefined。
【问题讨论】:
-
changeName = {(event) => changeNameHandler(event, index)}/> -
@RobertoZvjerković 谢谢!!!
-
请不要在问题中包含答案;自我回答很好。不过,这可能是个骗局,例如 stackoverflow.com/q/51042381/438992 等。
标签: javascript reactjs