我正在尝试了解react-redux的connect方法及其作为参数的功能。特别是mapStateToProps()。
mapStateToProps()
以我的理解,它的返回值mapStateToProps将是一个从状态派生的对象(因为它存在于商店中),其键将作为道具传递给目标组件(应用了connect的组件)。
mapStateToProps
这意味着目标组件所消耗的状态与存储在商店中的状态可能具有截然不同的结构。
问:可以吗? 问:这是预期的吗? 问:这是反模式吗?
问:Is this ok? 答:是的
Is this ok?
问:Is this expected? 是的,这是预期的(如果您正在使用react-redux)。
Is this expected?
问:Is this an anti-pattern? 答:不,这不是反模式。
Is this an anti-pattern?
这称为“连接”组件或“使其智能化”。这是设计使然。
它允许您额外花费时间使组件与状态分离,从而增加了代码的模块化。它还允许您将组件状态简化为应用程序状态的子集,实际上,这有助于您遵循Redux模式。
这样考虑:存储应该包含 应用程序的 整个 状态。 对于大型应用程序,它可能包含数十个嵌套在多层中的属性。 您不想每次通话都花很多钱(昂贵)。
没有mapStateToProps或类似的东西,您很想用另一种方法来提高状态/提高性能/简化。