2017-01-31 71 views
1

我有一個使用es6類語法構建的組件。這是一個簡單的組件,只有多樣化和一些樣式。然後,在父組件(稱爲app)上,我想渲染該組件,併爲其指定一個onClick,它調用父級的onclick處理程序。到目前爲止,父母使孩子像這樣:React組件不會調用onClick處理程序

<child_component onClick={this.clickhandler}> 

然後,我有,我必然要在構造函數中父母的背景下,父組件的方法。

組件呈現,但點擊組件時從不調用點擊處理程序。任何想法爲什麼?

+0

你檢查出[這個答案](http://stackoverflow.com/questions/22469968/可以-WE-附加鍵式處理到定製子組件)? –

+0

可能重複的[我們可以附加點擊處理程序自定義子組件](http://stackoverflow.com/questions/22469968/can-we-attach-click-handlers-to-custom-child-components) –

回答

4

由於子組件不是本地DOM元素,但是,此處定義的另一個React組件,onClick只是該組件的屬性。你需要做的是,子組件的內部傳遞的onClick支撐到DOM組件的onClick事件:

var ChildComponet= React.createClass({ 
render: function() { 
return (
    <div className="childcomponent" onClick={this.props.onClick}> 
    ... 
    </div> 
); 
} 
}); 
+0

工程太棒了!我知道它必須是這樣的! – Silvertail

相關問題