gpt4 book ai didi

redux - Redux中的 Action 是否应该始终是唯一的?

转载 作者:行者123 更新时间:2023-12-04 12:46:47 24 4
gpt4 key购买 nike

在此示例中,我使用名为 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' });

这会导致“ todos ”和“ counter ”归约器均被触发。
除非我真的打算,否则我应该让所有 reducer 采取独特的行动吗?

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

名称间隔 Action 应该解决吗?

eg: "POINT_INCREMENT", "POINT_DECREMENT".

最佳答案

让不同的reducer响应相同的 Action 并没有天生的错误-例如,如果您一次刷新整个状态。但是,是的,如果您有两个分别对应于不同事物的计数器,则可能需要提出一种命名方案来区分。但是我认为 Action 名称可能应该有一些名词来表明它们适用于什么。

关于redux - Redux中的 Action 是否应该始终是唯一的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34460125/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com