假设我有下一个减速器:
export default (state = [], { type, payload }) => {
switch (type) {
case FETCH_POKEMONS:
const objeto = {};
payload.forEach((conexion) => {
objeto[conexion.name] = conexion
});
return objeto;
case FETCH_POKEMON:
return { ...state, ...payload }
default:
return state
}
}
Run Code Online (Sandbox Code Playgroud)
我将有一个像这样的combineReducers:
export default combineReducers({
pokemons: pokemonReducers,
});
Run Code Online (Sandbox Code Playgroud)
但我希望有动作pokemons的状态FETCH_POKEMONS,而另一个状态则需要pokemon动作FETCH_POKEMON。如何combineReducers从一个减速器文件中派生出两种状态?
这是反模式,这里最接近的事情是从文件中导出 2 个减速器,每个用例一个
export const reducer1 = (state = [], { type, payload }) => {
switch (type) {
case FETCH_POKEMONS:
const objeto = {};
payload.forEach((conexion) => {
objeto[conexion.name] = conexion
});
return objeto;
default:
return state
}
}
export const reducer2 = (state = [], { type, payload }) => {
switch (type) {
case FETCH_POKEMON:
return { ...state, ...payload }
default:
return state
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7969 次 |
| 最近记录: |