ReactJS 在点击时发送键(索引)
ReactJS send key(index) on click
我想在点击函数时发送元素的索引。因为我应该更改每个元素的数据并从数组中获取它。
如何从 List
获取 MainBlock
中的密钥?可能吗?还是我做错了什么?
我是 React 的新手,犯了很多错误。
var MainBlock = React.createClass({
Click: function() {
// I need to get element KEY
// var data = array[key]
},
render: function() {
return (
<List Click={this.props.Click.bind(null, this)}>
);
}
});
var List = React.createClass({
render: function() {
var ItemNodes = this.props.data.map(function(step, index) {
return (
<Item className="class" Click={this.props.Click.bind(null, this)} key={index} />
);
}.bind(this));
return (
<ul>
{ItemNodes}
</ul>
);
}
});
var StepWindow = React.createClass({
render: function() {
return (
<li onClick={this.props.Click}>
yo!
</li>
);
}
});
感谢您的帮助。
试试这个:
Click={this.props.Click.bind(this, index)}
Click: function(idx, e){
}
查看文档示例中的 boundClick
http://facebook.github.io/react/tips/expose-component-functions.html
edit 我对此进行了编辑,以表明传递给 Click 函数的参数顺序不同。是 e, idx 应该是 idx, e.
我想在点击函数时发送元素的索引。因为我应该更改每个元素的数据并从数组中获取它。
如何从 List
获取 MainBlock
中的密钥?可能吗?还是我做错了什么?
我是 React 的新手,犯了很多错误。
var MainBlock = React.createClass({
Click: function() {
// I need to get element KEY
// var data = array[key]
},
render: function() {
return (
<List Click={this.props.Click.bind(null, this)}>
);
}
});
var List = React.createClass({
render: function() {
var ItemNodes = this.props.data.map(function(step, index) {
return (
<Item className="class" Click={this.props.Click.bind(null, this)} key={index} />
);
}.bind(this));
return (
<ul>
{ItemNodes}
</ul>
);
}
});
var StepWindow = React.createClass({
render: function() {
return (
<li onClick={this.props.Click}>
yo!
</li>
);
}
});
感谢您的帮助。
试试这个:
Click={this.props.Click.bind(this, index)}
Click: function(idx, e){
}
查看文档示例中的 boundClick http://facebook.github.io/react/tips/expose-component-functions.html
edit 我对此进行了编辑,以表明传递给 Click 函数的参数顺序不同。是 e, idx 应该是 idx, e.