【发布时间】:2026-01-01 05:10:01
【问题描述】:
这是一个一般理论问题。
使用 mapStateToProps 从 Store 中选择一组特定的数据并将其作为 Prop 发送到组件中的目的是什么,而所有这些数据已经对 Store 中的所有组件全局可用?
另一种说法是,为什么我要通过将状态映射到道具的额外步骤,以便我可以使用 props.something 访问数据,而我可以使用 state.something 访问数据?
【问题讨论】:
-
“当所有这些数据已经对商店中的所有组件全局可用时?” - 所有数据如何已经对所有组件可用?组件只能访问作为 props 传递给它们的 redux 存储中的数据。
-
相信一定是基于以下几点。在组件内部,如果我正在创建我的映射状态到道具功能,就像
const mapStateToProps = (state) => { return { streams: Object.values(state.streams) }; };我将状态作为参数在那里......这意味着它在那里可用?虽然我猜这是一个回调函数,所以当它在商店中执行时,它实际上在那里可用,而不是在组件中......我可能刚刚回答了我自己的问题。 -
如果我控制台日志
state.streams我被告知它是未定义的,所以在这个组件的范围内状态实际上是未定义的。
标签: reactjs redux react-redux