我是新手做出反应,所以我对此并不了解.
我正在尝试向li添加一个单击处理程序,但该函数似乎未定义?
我正在尝试向li添加一个单击处理程序,但该函数似乎未定义?
var ActivityList = React.createClass({ getInitialState: function() { return {name:"test"}; },handleClick:function(e){ console.log(e.target.name); },render:function(){ return ( <ul> {this.props.data.map(function(game){ return <li onClick={this.handleClick} name={game.name}>{game.name}</li>; }) } </ul>); } });
我想知道是不是因为我在这里找错了?
将其设置为
.map
,因为在
.map
回调中这指的是全局范围(在浏览器中它是窗口或如果使用
strict mode
则未定义)
this.props.data.map(function(game) { return <li onClick={this.handleClick} name={game.name}>{game.name}</li>; },this); ^^^^^