React native 已覆盖而不是合并Redux存储
我正在使用Redux在React Native中编写一个应用程序。当我执行一个操作时,它似乎取代了存储,而不是更新存储,它只定义了在我的reducer中显式声明的值 我正在使用React native 已覆盖而不是合并Redux存储,react-native,redux,react-redux,redux-thunk,React Native,Redux,React Redux,Redux Thunk,我正在使用Redux在React Native中编写一个应用程序。当我执行一个操作时,它似乎取代了存储,而不是更新存储,它只定义了在我的reducer中显式声明的值 我正在使用redux actions包中的handleActions。减速机示例如下所示 import { handleActions } from 'redux-actions'; export default handleActions({ DOCUMENT_GET_ALL_PENDING: state => ({
redux actions
包中的handleActions
。减速机示例如下所示
import { handleActions } from 'redux-actions';
export default handleActions({
DOCUMENT_GET_ALL_PENDING: state => ({
isRefreshing: true,
}),
DOCUMENT_GET_ALL_FULFILLED: (state, action) => ({
document: action.payload.documents,
isRefreshing: false,
}),
}, { isRefreshing: false, documents: [] });
例如,当到达DOCUMENT\u GET\u ALL\u PENDING
时,documents数组被设置为undefined。
以下是我的店铺的创建过程;
我正在使用reduxpromise中间件
,reduxdevtools扩展
和thunk
中间件
const store = createStore(
rootReducer,
defaultState,
composeWithDevTools(applyMiddleware(promiseMiddleware(), thunk)),
);
欢迎您提供任何帮助或建议。您需要将您的州与前一州合并。现在您只是返回新的状态值 有很多方法可以做到这一点,但您可以使用
es6扩展运算符
DOCUMENT_GET_ALL_PENDING: state => ({
...state,
isRefreshing: true,
}),
DOCUMENT_GET_ALL_FULFILLED: (state, action) => ({
...state,
document: action.payload.documents,
isRefreshing: false,
})
您需要将您的州与上一个州合并。现在您只是返回新的状态值 有很多方法可以做到这一点,但您可以使用
es6扩展运算符
DOCUMENT_GET_ALL_PENDING: state => ({
...state,
isRefreshing: true,
}),
DOCUMENT_GET_ALL_FULFILLED: (state, action) => ({
...state,
document: action.payload.documents,
isRefreshing: false,
})
是否有方法覆盖此默认行为?我可能需要寻找另一个实现来实现
combineReducers
?您需要返回一个新的合并状态,因为它是不可变的
,并且不能进行变异,所以有一些帮助函数可以做到这一点,因为这可能会有帮助。有没有方法覆盖此默认行为?我可能需要寻找另一个实现来实现combineReducers
?您需要返回一个新的合并状态,因为它是不可变的
,并且不能进行变异,所以有一些帮助函数可以这样做,因为在中可能会有所帮助