我有一個抽屜組件,帶有一個打開此抽屜的按鈕。 我想通過點擊抽屜區域以外的任何地方關閉抽屜。我試過這段代碼。它適用於開放,但它不適用於關閉。React.js中的抽屜
var Child = React.createClass({
render: function() {
return (
<div className="chatBar">
<div onClick={this.onClick} className="closeBTN">
<img src="../src/contents/images/svg/close.svg"/>
</div>
<Tab />
</div>
);
}
});
var ChatBar = React.createClass({
getInitialState: function() {
return { childVisible: false ,childInVisible: true ,};
},
render: function() {
return(
<div>
<div onClick={this.onClick} className="chatBTN">
<img src="../src/contents/images/svg/chat.svg"/>
</div>
{
this.state.childVisible
? <Child />
: null
}
</div>
)
},
onClick: function() {
this.setState({childVisible: !this.state.childVisible});
},
onClickClose: function(){
this.setState({childInVisible: !this.state.childInVisible});
},
});
export default ChatBar;
你可以在這裏找到一個解決方案http://stackoverflow.com/questions/32553158/detect-click-outside-react-component –
你能解釋一下我的代碼嗎?我是新的反應,我不知道如何做到這一點.tnx很 – leman17
或看看這個工具https://github.com/Pomax/react-onclickoutside –