我有一个问题:如何使用React将函数传递给子组件中的列表中的每一项。现在我有了一份“儿童”的号码列表。单击其中一些应该会更改父级和“焦点”=单击值中的状态。请解释一下它的工作原理。
var App = React.createClass({
getInitialState: function(){
return {focused : 'nil'}
},
clickHandler: function(e){
this.setState({focused: e});
},
render: function(){
return(
<div className = 'app'>
<Child data = {['1', '2', '3']} handler = {this.clickHandler} />
{this.state.focused}
</div>
);
}
});
var Child = React.createClass({
clickHandler: function(e){
{this.props.handler(e)}
},
render: function(){
var self = this;
var list = this.props.data.map(function(item, index){
return <li key = {index} onClick = {self.clickHandler}>{item}</li>
});
return(
<ul className = 'child'>
{list}
</ul>
);
}
});发布于 2016-06-29 15:41:59
将项绑定到单击处理程序
var Child = React.createClass({
clickHandler: function(e){
{this.props.handler(e)}
},
render: function(){
var self = this;
var list = this.props.data.map(function(item, index){
return <li key = {index} onClick = {self.clickHandler.bind(null,item}>{item}</li>
});
return(
<ul className = 'child'>
{list}
</ul>
);
}
});https://stackoverflow.com/questions/38103982
复制相似问题