Reactjs 是否必须在redux层中创建动作创建者?
我是react的redux库的新手 这是我的密码Reactjs 是否必须在redux层中创建动作创建者?,reactjs,redux,Reactjs,Redux,我是react的redux库的新手 这是我的密码 // action creator export function updateCategories(payload) { return { type: UPDATE_CATEGORY, payload }; } // dispatch action creator dispatch(updateCategories({ list: data })); 但如果我真的喜欢: dispatch({ type: UPDATE_CATEGORY
// action creator
export function updateCategories(payload) {
return { type: UPDATE_CATEGORY, payload };
}
// dispatch action creator
dispatch(updateCategories({ list: data }));
但如果我真的喜欢:
dispatch({ type: UPDATE_CATEGORY, payload });
那么,如果我直接在分派中编写动作而不从函数返回,那会有什么问题呢?从技术上讲,您可以直接从组件中分派动作,但有动作创建者的好处,例如
- 它为分派创建了一个直观命名的、可重用的函数,您可以根据需要导入该函数,而不是手动到处分派。因此,如果您想更改某个动作的分派方式,只需更改动作创建者,而不必遍历它使用的所有位置并更改每个位置
- 简单地使用有效负载分派某些内容是可以的,但您也可能最终拥有与该分派相关的逻辑,比如处理有效负载或获取数据(使用一些工具,如
)。最好是有一个单独的动作创建者,在其中定义了所有的动作,可以在整个应用程序中重用,而不是到处复制粘贴这些逻辑redux-thunk
分派
,但是有动作创建者的好处,例如
- 它为分派创建了一个直观命名的、可重用的函数,您可以根据需要导入该函数,而不是手动到处分派。因此,如果您想更改某个动作的分派方式,只需更改动作创建者,而不必遍历它使用的所有位置并更改每个位置
- 简单地使用有效负载分派某些内容是可以的,但您也可能最终拥有与该分派相关的逻辑,比如处理有效负载或获取数据(使用一些工具,如
)。最好是有一个单独的动作创建者,在其中定义了所有的动作,可以在整个应用程序中重用,而不是到处复制粘贴这些逻辑redux-thunk
您可以通过此链接了解更多信息,它有助于代码的可重用性。 您可以通过此链接了解更多信息