在同一组件的所有实例之间共享状态?

Fez*_*sta 5 reactjs

我有一个工具提示组件,悬停时会显示一个简单的工具提示。

当您使用mouseLeave该组件时, asetTimeout会触发,当它结束时,工具提示将关闭 ( setState({ open: false }))。

现在我想添加一种行为来反映本机操作系统工具提示之一:

当您使用mouseLeave一个工具提示,但立即打开mouseEnter一个不同的工具提示时,前一个工具提示会立即关闭,并打开新的工具提示。

为此,我需要在工具提示组件的所有实例之间拥有共享状态。我可以使用 Redux,但对于如此简单的任务来说,它似乎有点大材小用(我需要一个与存储交互并提供可用操作和属性的容器)。

有更简单的解决方案吗?

Dam*_*oux 0

ReactComponent 之间共享信息的最佳方式是 Flux 架构。Redux就是其中之一。

一个更简单的选择是使用浏览器本机存储来存储临时信息:它类似于全局变量,但具有特定的范围和持续时间定义。