Javascript ReactJS动态子项和onClick事件

Javascript ReactJS动态子项和onClick事件,javascript,reactjs,Javascript,Reactjs,我对使用Mixin的ReactJS组件和触发onClick事件的动态子组件有问题。我有一个react组件,它基于传递给它的一些道具,将把额外的react组件推到一个数组中。然后在render方法的最终返回语句中,将这些组件添加到内容中。这些动态子级在其render方法中定义onClick事件,并使用mixin中的处理程序。但是,只有父级上的处理程序才会激发。我从来没有收到过关于孩子们的点击事件。但是,如果这些子级是硬编码的,onClick处理程序确实会启动。知道我做错了什么吗?粗略的例子: 混合

我对使用Mixin的ReactJS组件和触发onClick事件的动态子组件有问题。我有一个react组件,它基于传递给它的一些道具,将把额外的react组件推到一个数组中。然后在render方法的最终返回语句中,将这些组件添加到内容中。这些动态子级在其render方法中定义onClick事件,并使用mixin中的处理程序。但是,只有父级上的处理程序才会激发。我从来没有收到过关于孩子们的点击事件。但是,如果这些子级是硬编码的,onClick处理程序确实会启动。知道我做错了什么吗?粗略的例子:

混合:

var eventhandler = {
    handleClick: function(e) { console.log('click', this.name); }
};
组件及其子组件:

 var foo = React.createClass({
    mixins: [eventhandler],
    name: '',
    ...
    render: function() {
        children_comps = [];
        if(somecondition) {
            children_comps.push(<ChildComponent id={this.props.id} />);
        }

        return (<div onClick={this.handleClick}><p>asdf</p>{children_comps}</div>);
    }
};
var foo=React.createClass({
mixins:[eventhandler],
名称:“”,
...
render:function(){
儿童薪酬=[];
如果(某些条件){
子节点\u comps.push();
}
返回(asdf

{children\u comps}); } };
子组件:

var ChildComponent = React.createClass({
    mixins: [eventhandler],
    name: '',
    ...
    render: function() {
        return(<div onClick={this.handleClick}>CHILD {this.props.id} OF THE WILD</div>);
    }
};
var ChildComponent=React.createClass({
mixins:[eventhandler],
名称:“”,
...
render:function(){
return(野生的子对象{this.props.id});
}
};

顺便说一句,foo应该是
foo
。除此之外,其余的似乎工作正常,完全相同的bug在过去3天里一直让我发疯!我们需要帮助!@dhirajbodichera是的,这很有效,因为孩子们都是硬编码的。我有一个应用程序,我解析文本框中的一些文本,并使用JSON检查器组件显示它。一旦用户更改文本,JSON inspector更新,但不再处理点击…@VincentLecrubier这正是我面临的问题。我还没有完全解决它。幸运的是,到目前为止,它还不是一个太大的问题,但它将显示它正在向前发展。代码也适用于我。孩子们正在获得点击平衡我不完全理解关于孩子们被硬编码的评论。请提供他们如何被动态化的细节。