mpe*_*pen 2 reactjs redux react-redux
我是Redux的新手,我正在试图找出<Provider>和之间的关系connect().
据我所知,connect 将您的组件连接到商店.但是,函数参数中没有任何地方可以告诉您connect该商店的确切位置!
如果我没有记错,这家店是自动提供给connect()通过<Provider>.这对我来说似乎非常违反直觉,因为Redux 的整个要点是透明的.
所以我的问题是,如何<Provider>在connect()不使用某种全局变量的情况下将商店关闭?它是否遍历整个树,搜索connected组件然后注入自己?这不是效率低下的吗?如果是这样,我将如何在同一组件树中使用两个不同的商店?
其次,假设我不想使用<Provider>,connect()没有它我怎么用?即,我如何明确地将商店传递给每个连接的组件?
<Provider>并且connect是该react-redux模块的一部分.他们一起工作,你不应该真正使用一个没有另一个.您可以使用redux它自己没有react-redux,但你可能最终会重新创建部分或全部的功能react-redux提供.
react-redux通过使用React上下文来工作.上下文就像一个隐藏层,用于传递由多个组件共享的变量,而不显式传递它们.要使用上下文,您需要在某处设置上下文,还需要在context需要时使用某些内容来获取变量.在react-redux <Provider>本质上节省了商店的context和connect提供了一种从拿到店里context.
如果你还没有,我推荐这些视频来开始使用Redux和Redux react-redux的创建者.
| 归档时间: |
|
| 查看次数: |
1086 次 |
| 最近记录: |