拥有“主状态”的最佳方法是使用React-Redux。
Redux 可以做 Context 做的事情等等。它还具有许多用于侦听来自服务器的实时更新的库。当时最流行的是React-Redux-Firebase,它将您的 Reduxstore
与您的 Firebase 数据库连接起来。
大多数开发人员都同意 Redux 需要一些时间来设置的事实,但绝对值得投入时间。我个人使用过 React-Redux-Firebase,我可以向您保证,所有实时更新都将在 250 毫秒store
内出现在您的 Redux中。
Firebase 在一定程度上也是免费的(查看Firebase 定价)。
为了state
在组件中访问您的 Redux ,您需要执行 3 个步骤:
步骤 1:创建一个mapStateToProps
常量,其中包含您想要从store
.
const mapStateToProps = state => ({
customers: state.customers,
books: state.books
})
第 2 步:创建一个actions
常量,其中包含您在一个actions.js
或类似文件中拥有的并且您想要调用的任何函数
import { fetchCustomers } from './actions.js'
const actions = {
fetchCustomers
}
请记住,任何从您的 API 获取的数据都可以(并且应该)从那里完成。
第 3 步:使用 Redux 的connect
函数导出您的组件,包括 yourmapStateToProps
和actions
consts。
export default connect(mapStateToProps, actions)(myComponent);
Redux 在单个 stackoverflow 答案中解释起来相当复杂,因此我建议您查看文档或遵循教程。您应该能够在开发的第一天或第二天弄清楚所有事情。这绝对值得花时间。