gpt4 book ai didi

redux - React Redux-mapStateToProps中返回的状态具有化简器名称作为属性?

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

我有2个 reducer 组合在一个根 reducer 中,并在商店中使用。
第一个reducer'AllTracksReducer'应该返回一个对象,第二个'FavoritesReducer'返回一个数组。

当我在connect中创建一个容器组件和一个mapStateToProps方法时,由于某种原因,存储的返回状态是一个带有2个reducer对象的对象,这些对象保存数据,而不仅仅是一个预期的包含相应数据的对象。

    function mapStateToProps(state) {
debugger:
console.dir(state)
//state shows as an object with 2 properties, AllTracksReducer and FavoritesReducer.


return {
data: state.AllTracksReducer.data,
isLoading: state.AllTracksReducer.isLoading
}
}

export default connect(mapStateToProps)(AllTracksContainer);

因此,在mapStateToProps中,要获得正确的state属性,我不得不说
state.AllTracksReducer.data ...但是我期望数据直接在状态对象上可用?

最佳答案

是的,这是常见的半错误。这是因为您可能正在使用ES6对象文字速记语法来创建传递给combineReducers的对象,因此导入的变量的名称也将用于定义状态 slice 名称。

Redux文档Structuring Reducers - Using combineReducers 中解释了此问题。

关于redux - React Redux-mapStateToProps中返回的状态具有化简器名称作为属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42026497/

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