1
這裏是我的功能:反應 - 奇怪的東西調用的setState OnMouseEnter在時/發表
handleAnimationState(event, value) {
let id = event.target.id;
let animation = this.state.animation;
let newState = update(animation, {[id]: {$set: value}})
this.setState({animation: newState})
}
handleMouseEnter(event) {
this.handleAnimationState(event, true)
}
handleMouseLeave(event) {
this.handleAnimationState(event, false)
}
這裏有
<div id="div1" onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>
<div style={{position: 'fixed', height: '100%', width: '100%'}}></div>
<h1> Title </h1>
<p> Lorem. </p>
</div>
<div id="div2" onMouseEnter={this.handleMouseEnter} onMouseLeave={this.handleMouseLeave}>
<div style={{position: 'fixed', height: '100%', width: '100%'}}></div>
<h1> Title </h1>
<p> Lorem. </p>
</div>
一切都應該正常工作的因素,但這裏是發生了什麼,我不要」理解爲什麼:
- 當我的鼠標進入或離開左側或右側 側的元素時,stat e應該改變。例如,如果我從側面輸入 第一格,則將this.state.animation.div1設置爲true, 並且在我離開時返回false。
- 當我的鼠標進入從頂部或底部雖然元素,相應的狀態保持不變,這種情況發生:
我不明白爲什麼會這樣,怎麼會在事件與觸發空的id值?爲什麼只有從頂部和底部,而不是從側面?
我對此沒有任何解釋,希望你能做到。
編輯:我只是注意到,這隻發生在第一個元素的頂部。當鼠標從底部離開第二個元素時,一切都按照它應該的那樣工作。