Javascript 未调用react js子组件onclick事件
容器组件是主组件,它反过来调用用户组件的呈现。在用户呈现方法中,Javascript 未调用react js子组件onclick事件,javascript,reactjs,Javascript,Reactjs,容器组件是主组件,它反过来调用用户组件的呈现。在用户呈现方法中,项具有onClick事件 onClick事件在页面加载时被调用,但在click事件中从未被调用 容器=React.createClass({ mixins:[ReactMeteorData], getMeteorData(){ 返回{ currentActiveUsers:ActiveUsers.find({}).fetch() }; }, getCurrentActiveUsers(){ 返回此.data.currentActiv
项具有onClick事件
onClick事件在页面加载时被调用,但在click事件中从未被调用
容器=React.createClass({
mixins:[ReactMeteorData],
getMeteorData(){
返回{
currentActiveUsers:ActiveUsers.find({}).fetch()
};
},
getCurrentActiveUsers(){
返回此.data.currentActiveUsers.map((用户)=>{
返回
});
},
render(){
返回(
{this.getCurrentActiveUsers()}
);
}
}));
User=React.createClass({
proptype:{
用户:React.PropTypes.object.isRequired
},
发起{
控制台日志(“已启动”);
},
render(){
返回(
{this.props.user.username}
);
}
})) 在定义
onClick
时调用事件。相反,您需要将onClick
绑定到函数:
initiate(){
console.log("initiated");
},
render(){
return(
<li onClick={this.initiate}>
{this.props.user.username}
</li>
);
}
initiate(){
控制台日志(“已启动”);
},
render(){
返回(
{this.props.user.username}
);
}
因此,只需从this.initiate()
中删除函数调用()
否则,您将尝试将console.log
的结果绑定到onClick
propTypes:{
user:React.PropTypes.object.isRequired
},
initiate(){
console.log("initiated");
},
render(){
return(
<li onClick={this.initiate()}>
{this.props.user.username}
</li>
);
}
initiate(){
console.log("initiated");
},
render(){
return(
<li onClick={this.initiate}>
{this.props.user.username}
</li>
);
}