【发布时间】:2019-09-03 13:04:56
【问题描述】:
我无法正确选择列表项
我是 React 的初学者,我在迭代 Material UI 中的 List Item 时遇到了麻烦。我正在遍历 json 数组并将列表项添加到列表中。 点击任何列表项时,列表总是选择最后一项
function handleListItemClick(index) {
setSelectedIndex(index);
props.user.updateState(index);
props.user.setCourseName(props.mycourses[index].courseName);
}
function RenderListItem(props) {
var indents = [];
let ind = 0;
for (var key in props.coursevals) {
indents.push(
// <span>
<ListItem
button
selected={selectedIndex === key}
onClick={() => handleListItemClick(key)}
// onClick={event => handleListItemClick(event, 0)}
className={classes.ListItem}
key={key}
>
{/* {console.log(key)} */}
<ListItemIcon>
<img
className={classes.courseimg}
src="../../../public/images/book.png"
/>
</ListItemIcon>
<ListItemText primary={props.coursevals[key].courseId} />
<img
className={classes.rightarrow}
src="../../../public/images/rightarrow.png"
/>
</ListItem>
);
}
return indents;
}
OnClick 事件总是将最后一个索引发送给函数。我想发送我刚刚点击的索引
【问题讨论】:
标签: javascript arrays reactjs list listview