redux 和 redux 工具包之间的主要区别是什么,redux 工具包中是否需要 saga? [已关闭]

问题描述 投票:0回答:2

我的问题是我应该使用哪个? Redux Toolkit 可以替代 Redux 核心吗?

reactjs redux redux-toolkit redux-saga
2个回答
90
投票

Redux 曾经很棒,但如果您没有尝试过它们,我强烈建议使用 Redux-Toolkit。我希望你坚持使用 redux 的唯一情况是当你使用基于类的组件时,Redux Toolkit 确实有一些样板文件(如 Redux),你可能会错过像样的支持。

然而,对于功能组件,Redux 工具包就像是增强版的 Redux。

使用Redux工具包的原因:

  1. 与 Redux 相比,所需的样板代码要少得多。

  2. useSelector
    useDispatch
    这样的 Redux 钩子让事情变得如此简短且易于使用。 [这并不是 Redux 工具包特有的,但是,在这里强调它,因为在功能组件中使用这些钩子非常有帮助,并且可能对那些完全不熟悉 Redux 的人有帮助]

  3. 您不需要进行手动

    thunk
    设置,因为 redux-toolkit 是开箱即用的
    createAsyncThunk
    ,这使您能够以非常轻松的方式执行异步操作。

  4. getState
    对于获取任何操作或异步操作的状态变量也非常有帮助。

  5. 可变性可能被认为是优点或缺点,但如果您不太习惯使用扩展运算符进行编写,您可能也会喜欢这个功能。直接进行赋值,让 redux 工具包处理底层的可变性。

  6. current
    可用于在任何地方记录您的状态,以防您想要调试并了解哪里出了问题。 (当然,Redux 调试器工具也很棒)

  7. 预建模板:您可能想要使用

    npx create-react-app my-app --template redux-typescript
    ,或者如果您将其与下一个一起使用:
    yarn create next-app --example with-redux with-redux-app
    。它为您提供了一个准备就绪的
    redux toolkit
    样板,并且还包含最重要的 redux 状态管理应用程序的样板,以便您可以参考它们非常轻松地创建自己的切片。

我一直在使用大量的 redux,最初它有点令人困惑,但是一旦你很好地掌握了 redux 工具包,并且如果你使用了大量的功能组件,你可能永远不会再回到 redux 了。


19
投票

Redux Toolkit 是您自 2019 年以来编写的所有 Redux 代码的官方推荐。请参阅有关此的 Redux 风格指南为什么 Redux Toolkit 是今天如何使用 Redux。

我建议您按照 Redux 主页上的

官方 Redux“Essentials”教程开始学习 Redux - 这将从头开始教您 Redux Toolkit。

© www.soinside.com 2019 - 2024. All rights reserved.