Tengo un componente construido con sintaxis de clase es6. Es un componente simple con solo un estilo diverso y algo. Luego, en el componente principal (llamado aplicación), me gustaría representar ese componente y darle un onClick que llame al controlador onclick del padre. Hasta ahora, el padre representa al niño así:
<child_component onClick={this.clickhandler}>Y luego tengo un método en ese componente principal que he vinculado al contexto principal en el constructor.
El componente se procesa, pero nunca se llama al controlador de clics cuando hago clic en el componente. ¿Alguna idea de por qué?
Dado que el componente secundario no es un elemento DOM nativo, sino otro componente de React, onClick, como se define aquí, es simplemente una propiedad de ese componente. Lo que debe hacer es, dentro del componente secundario, pasar el accesorio onClick al evento onClick de un componente DOM:
var ChildComponet= React.createClass({ render: function() { return ( <div className="childcomponent" onClick={this.props.onClick}> ... </div> ); } });