gpt4 book ai didi

reactjs - 当尝试映射react-redux状态时,state.get不是一个函数

转载 作者:行者123 更新时间:2023-12-03 13:47:46 25 4
gpt4 key购买 nike

在这里,我尝试显示组件中的源代码,但总是发现错误,因为 state.get 不是函数。

reducer.js

let initialState = Immutable.fromJS({sources: []});

export default function (state = initialState, action){
switch(action.type){
case GetSources:
return state.merge({
sources: action.sources
});
break;
}
return state;
}

Component.js

function mapStateToProps(state){
return{
sources: state.get('sources')
}
}

allReducers.js

`const allReducers = combineReducers({
sources:sources,
news:news
})`

最佳答案

请尝试这个:

function mapStateToProps(state){
return{
sources: state.sources.get('sources')
}
}

请注意,如果您使用combineReducers,则给定reducer管理的状态只是整个redux状态的一部分。在这种情况下,要访问给定 reducer 管理的状态切片,您必须使用注册给定 reducer 的键名称(在您的情况下为 sources)。
根据 Redux combineReducers docscombineReducers返回的reducer:

calls every child reducer, and gathers their results into a single state object. The shape of the state object matches the keys of the passed reducers

关于reactjs - 当尝试映射react-redux状态时,state.get不是一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45008923/

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