循环在jsx中设置onClick

时间:2018-05-04 23:06:39

标签: jsx

所以我的问题非常类似于另一篇关于jsx中的for循环的帖子。除了我的问题,我更感兴趣的是如何在onClick方法中设置值。

    var rows = [];
    var page_index = 10;
    for (var i = 0; i < 6; i++) {
       page_index = page_index + i;
       // note: we add a key prop here to allow react to uniquely identify each
       // element in this array. see: https://reactjs.org/docs/lists-and-keys.html
       rows.push(<ObjectRow key={i} onClick = {() => props.changePage(page_index)}/>);
}
return <tbody>{rows}</tbody>;

基本上所有ObjectRows的changePage都会调用带有15的changePage,有没有办法让page_index不是变量?我试着这样做

props.changePage({page_index})

这似乎没什么帮助。

1 个答案:

答案 0 :(得分:0)

不是操纵page_index,而是设置初始页面索引并在函数调用中执行数学部分,如下所示:

    var rows = [];
    var initialPageIndex = 10;
    for (var i = 0; i < 6; i++) {
       // note: we add a key prop here to allow react to uniquely identify each
       // element in this array. see: https://reactjs.org/docs/lists-and-keys.html
       rows.push(<ObjectRow key={i} onClick = {() => props.changePage(initialPageIndex + i)}/>);
}
return <tbody>{rows}</tbody>;