gpt4 book ai didi

javascript - 我可以在没有 Redux Thunk 中间件的情况下分派(dispatch)多个操作吗?

转载 作者:行者123 更新时间:2023-12-03 02:16:41 24 4
gpt4 key购买 nike

我读到 Redux Thunk 是管理异步操作/请求的可靠方法。通过其他操作分派(dispatch)操作没有什么太多的。

如何调度同步操作?我不确定 thunk 方法的性能问题,但是我可以在其他 Action 创建者中分派(dispatch) Action 而不在内部定义函数吗?

在我看来,对于这种需求,使用 redux thunk 是不必要的。

最佳答案

显示和隐藏通知确实 indeed似乎是 thunk 的一个很好的用例。

David’s answer描述了响应某事而进行多次更新的“默认”方式:从不同的 reducer 处理它。大多数情况下,这就是您想要做的。

有时(如通知)可能会很不方便。我在 my answer to this question 中描述了如何在调度一个或多个操作之间进行选择。 .

如果您确实决定分派(dispatch)多个操作,可以从组件中按顺序执行,或者使用 Redux Thunk。请注意,如果 Redux Thunk 对您来说很神秘,您应该 understand what it really is在使用它之前。它仅在代码组织方面提供好处;实际上,这与您自己连续运行两次 dispatch() 没有什么不同。

也就是说,使用 Redux Thunk 调度多个操作看起来像这样:

function increment() {
return { type: 'INCREMENT' }
}

function incrementTwice() {
return dispatch => {
dispatch(increment())
dispatch(increment())
}
}

store.dispatch(increment())
incrementTwice()(store.dispatch) // doesn’t require redux-thunk but looks ugly
store.dispatch(incrementTwice()) // requires redux-thunk but looks nice

使用 Redux Thunk 不会有任何性能问题。这只是一种调用函数的好方法,您可以将调度移交给该函数,以便它们可以根据需要多次执行该操作。

关于javascript - 我可以在没有 Redux Thunk 中间件的情况下分派(dispatch)多个操作吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35493352/

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