gpt4 book ai didi

javascript - Redux 连接和 mapStateToProps

转载 作者:行者123 更新时间:2023-11-28 14:57:12 24 4
gpt4 key购买 nike

我试图了解 redux' connect 的工作原理,我想知道它是否:

  1. 每次状态随着新的 props 发生变化时都会创建一个新组件或
  2. 更新现有组件的状态

如果是后者,这不违背 React 的不可变 props 哲学吗?它如何更新 Prop ?

最佳答案

React 的不可变 props 哲学意味着您不应该从组件本身内部更新 props。您可以将新属性值从父组件传递给组件。这就是为什么存在 componentWillReceiveProps 方法的原因。

基本上,React 组件接收 props 并渲染 HTML。组件可以使用本地状态,但如果您使用 Redux,通常不需要这样做。Redux 管理单个状态对象中的所有状态,并使用 connect 方法,您可以将全局 Redux 状态的一部分“连接”到 React 组件。然后它将作为该组件内的 props 可用。

所以回答你的问题:答案 1 和 2 都不正确。当使用 connect 将一段状态连接到您的组件时,它将将该状态作为 props 传递。您的组件将没有状态(除非您编写自己的本地状态),只有 Prop 。如果 redux 状态的相应部分发生变化,这些 props 就会更新。

关于javascript - Redux 连接和 mapStateToProps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42443494/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com