我遇到一个奇怪的问题,其中我的一个简化器中的初始状态不接受新值。我已经能够轻松地向此初始状态添加新值,但是由于某些原因,现在当我映射StateToProps时,新的初始状态项返回为未定义。
//REDUCER
const initialState = {
(...cutting out a bunch of state here),
collectionSearchResults: {
results: {},
loading: false,
loaded: false,
error: ''
},
collectionImage: {
image: '',
loading: false,
loaded: false,
error: '',
},
collectionBeingEdited: {
collectionId: '',
loading: false,
complete: false,
error: '',
test: '',
},
removeReport: {
loading: false,
}
}
//INDEX of Component
const mapStateToProps = state => ({
(...cutting out a bunch of state here)
collectionBeingEdited: state.research.collectionBeingEdited,
removeReport: state.research.removeReport,
userInfo: state.account.myAccount.info,
})
//IN COMPONENT
console.log(this.props)
//result -> removeReport: undefined
答案 0 :(得分:0)
减速器的InitialState不是减速器。正如马丁建议的那样,您需要发布实际的减速器。
我敢打赌,在您的减速器之一的情况下,它不会返回其余状态:
case 'something':
return {
someKey: action.value
}
代替:
case 'something':
return {
...state,
someKey: action.value
}
这就是为什么您期望的属性不存在的原因。