关于行动的困惑的betewen减速器和调度员

时间:2020-07-17 16:08:07

标签: javascript typescript design-patterns redux

我对减速器和调度器有些困惑。 两者都将动作作为参数,但这并不意味着调度员的动作与我的减速器动作相同,对吧?

假设我有一个名为 fetchData 的操作,该操作将被分派,但不会到达reducer,因为它不会修改状态。

我阅读了有关redux的所有教程,教导将所有动作设置在一个地方。 我认为我们应该有 reducersActions dispatchersActions

我想念什么吗?

1 个答案:

答案 0 :(得分:1)

恕我直言,可以以reducersActionsdispatchersAction的形式破坏行为,但这不是标准约定。

定义动作时,基本上它围绕一个实体(要为其定义状态并在以后维护它)。动作的命名约定应阐明其存在的意图,并且根据here的讨论而变化。

因此,将动作保留在一个位置但是适当地命名(反映动作的意图)应该足以理解其是调用reducer(仅返回新状态)还是调度器(将散布更多动作) )。

在您的 fetchData 示例中,没有明确其目的。关注状态,然后开始创建操作。事物将自动掉入原处。