首先由驹,頁(yè)面是這樣?jì)鸬模?/p>
點(diǎn)擊上面的分享按鈕后:
我想要的效果是:點(diǎn)擊分享框外的任何地方募疮,彈出框消失炫惩,恢復(fù)原樣。
首先想到的方法是:
componentDidMount(){
document.onclick = this.onblur
}
onblur =() => {
this.setState({
showMask:false, //蒙板消失
showPop:false //分享框消失
})
}
這樣的結(jié)果是:
點(diǎn)擊任何地方兩者都消失阿浓,包括點(diǎn)擊分享按鈕(微信和朋友圈ICON)
所以經(jīng)過(guò)網(wǎng)上資料的啟發(fā)他嚷,又換了個(gè)思路:
點(diǎn)擊蒙板,分享框消失芭毙。
closePop =() => {
this.setState({
showMask:false,
showPop:false
})
}
render(){
return(
<div>
...
<div style={styles.maskLayer} onClick={this.closePop}></div>
...
</div>
)
}
如此這般筋蓖,甚好。