【发布时间】:2016-03-18 20:18:02
【问题描述】:
我有以下 Reactjs 代码。它生成一个内联菜单(元素列表)。如果我单击特定元素,我希望它在控制台中输出,但它不起作用。
import React from "react";
export default class GalleryHeader extends React.Component {
handleClick(cat) {
console.log(cat);
}
createItems(items) {
var output = [];
for(var i = 0; i < items.length; i++)
output.push(<li onClick={this.handleClick({items[i]})}>{items[i]}</li>);
return output;
}
render() {
return (
<ul class="list-inline">
{this.createItems(this.props.menuItems)}
</ul>
);
}
}
调用函数好像出错了
{this.handleClick({items[i]})}
当我像下面这样删除函数参数时,它可以正常工作:
handleClick() {
console.log("test");
}
createItems(items) {
var output = [];
for(var i = 0; i < items.length; i++)
output.push(<li onClick={this.handleClick}>{items[i]}</li>);
请指教。
【问题讨论】:
-
你遇到了什么错误?
标签: javascript reactjs jsx