1
ユーザーがそのコンポーネント上にマウスを置いたときに、コンポーネント状態の変更を基本的にトリガーしたいと思っています。要素の上をホバリングするときの状態変化をトリガーする方法
特定の条件(https://github.com/facebook/react/issues/6807)でonMouseEnterとonMouseLeaveが正常に動作しないため、代替手段はありますか?
編集: 再レンダリングとは関係があります。コンポーネントのタイプが同じでも、再レンダリングを強制すると、同じ問題が発生します。ドキュメントから
class onHover extends Component {
constructor(props) {
super(props);
this.state = {
bool: false,
}
}
render() {
return (
<div onMouseEnter={() => this.setState({ bool: true })} onMouseLeave={() => this.setState({ bool: false })}>
{
this.state.bool ? (
<div key={Math.random()}>[OPTION1] show after onMouseEnter</div>
) : (
<div key={Math.random()}>[OPTION2] show after onMouseLeave</div>
)
}
</div>
)
}
}
問題が残るonMouseOverの、ONMOUSEOUT使用してみてください – MoeSattler