Redux中的动作应始终唯一吗?

vbr*_*eak 6 redux

在此示例中,我使用名为ADD_TODO的操作

import { createStore, combineReducers } from 'redux';

function todos(state, action) {
    state = state || [];
    switch (action.type) {
        case 'ADD_TODO':
            return state.concat([ action.text ]);
        default:
            return state;
    }
}

function counter(state, action){
    state = state || 0;
    switch (action.type){
        case 'INCREMENT':
            return state+1;
        case 'DECREMENT':
            return state-1;
        case 'ADD_TODO':
            return state+100;
        default:
            return state;
    }
}

var app = combineReducers({
    todos: todos,
    counter: counter
});

var store = createStore(app);
store.dispatch({ type: 'ADD_TODO': text: 'buy eggs' });
Run Code Online (Sandbox Code Playgroud)

这会导致“ 待办事项 ”和“ 计数器 ”减速器均被触发。除非我确实打算,否则是否应让所有减速器采取独特的动作?

我们如何用几乎做同一件事的多个reducer来实现呢?例如,多个计数器可以具有“ INCREMENT”和“ DECREMENT”动作。

名称间隔动作应该解决吗?

例如:“ POINT_INCREMENT”,“ POINT_DECREMENT”。