我甚至不确定问题出在哪里,我唯一能想到的是因为使用.map()
this
在翻译中迷失了。我下面的内容是有效的,因为我总是希望在我开始尝试添加onClick
之前,这给了我这篇文章主题中的错误。我需要一双眼睛来看看,告诉我在这里我做错了我做了什么。
var myApp = React.createClass({
mixins: [Backbone.React.Component.mixin],
_myPrivateFunction: function (objId) {
console.log(objId);
},
render: function () {
return (<ul className="list-group">
{this.state.collection.map(function (system) {
return (<li className="list-group-item" onClick={this._myPrivateFunction.bind(this, system.objId)}>{system.objName}</li>);
})}
</ul>);
}
});
答案 0 :(得分:0)
尝试
var myApp = React.createClass({
mixins: [Backbone.React.Component.mixin],
_myPrivateFunction: function (objId) {
console.log(objId);
},
render: function () {
var that = this;
return (<ul className="list-group">
{this.state.collection.map(function (system) {
return (<li className="list-group-item" onClick={that._myPrivateFunction.bind(that, system.objId)}>{system.objName}</li>);
})}
</ul>);
}
});
this
的范围可能在该功能/事件中发生变化。