假如有一个 action :
   export function add() {
         return {type: 'ADD'}
      }
多个 reducers 都可以处理这个 action:
 `
export function reducer1(state = initialState, action) {
  switch (action.type) {
    case 'add':
        return  state + 1
   default: 
   return  state
  }
}
export function reducer2(state = initialState, action) {
  switch (action.type) {
    case 'add':
        return  state + 2
   default: 
   return  state
  }
}
`
在 view 中, 可以 指定执行 某一个 reducers 吗?
|  |      1FrankFang128      2016-01-22 13:00:58 +08:00 via Android 前端什么时候也要为设计模式所苦恼了 | 
|      2hienchu      2016-01-22 13:07:54 +08:00 via iPhone reducer 只负责更新数据, view 反应数据的变化,所以应该不需要关心 reducer 的存在,可以考虑把 action 细分 | 
|  |      3hxtheone      2016-01-22 13:39:45 +08:00 Redux 里对于一个 action 每个 reducer 都会跑一遍,有定义的话更新数据,没有定义就返回原有 state ,指定 reducer 从源码里看感觉找不到方法,还是按照 LS 说的把 action 区分一下吧 | 
|      4chend OP | 
|  |      5Niphor      2016-01-23 14:18:25 +08:00 所以人家的 type 都是'some/module/some/action/some/opt'的超长字符串吧... | 
|      6chend OP @Niphor  这种字符串 太长 可读性也 太不友好了。。 试过了, 可以像我 4L 说的 那样。。多传一个参数来判断。。 只不过,要区分的 reducers 中 也需要 更新对应的判断 | 
|  |      7nianjcn      2016-03-01 21:41:18 +08:00 flux 里面的 action 有 source 这个字段来标示 action 由哪个 view 触发的吧,不过反正 action 都是 plain object ,你自己随便定义吧 |