使用 Redux 搭配 ReactJS 有什么优势?

原文:https://www . geeksforgeeks . org/使用-redux-with-reactjs/ 的优势是什么

Redux 是一个用于 JavaScript 应用的状态管理工具。它更常用于 ReactJS,但也与许多其他框架兼容,如 Angular、Vue、Preact 以及普通的 JavaScript。需要注意的是,即使 React 和 Redux 经常一起使用,它们也是相互独立的!

使用 Redux 的优势:

1。集中式状态管理系统,即存储:反应状态存储在组件的本地。为了与应用程序中的其他组件共享这种状态,道具被传递给子组件,或者回调被用于父组件。另一方面,Redux 状态全局存储在存储中。整个应用程序的所有组件都可以轻松地直接访问数据。这集中了所有数据,使得组件很容易获得它所需要的状态。因此,在开发包含许多组件的大型复杂应用程序时,Redux 商店是首选。

2。性能优化:默认情况下,每当组件更新时,React 会重新渲染组件树中该部分的所有组件。在这种情况下,当给定组件的数据没有改变时,这些重新渲染就被浪费了(因为屏幕上显示的用户界面输出将保持不变)。Redux store 通过跳过这种不必要的重新呈现并确保给定组件仅在其数据实际发生变化时才重新呈现,有助于提高性能。

3。纯缩减器函数:纯函数定义为不改变输入数据,不依赖于外部状态,能够为同一输入持续提供相同输出的任何函数。与 React 相反,Redux 依赖于这样的纯函数。它获取一个给定的状态(对象),并将其传递给循环中的每个缩减器。如果发生任何数据更改,将从缩减器返回一个新对象(重新渲染)。但是,如果没有更改(没有重新呈现),则会返回旧对象。

4。存储长期数据:由于 redux 中存储的数据会持续到页面刷新,因此它被广泛用于存储用户导航应用程序时所需的长期数据,例如从 API 加载的数据、通过表单提交的数据等。另一方面,React 适合存储可能快速变化的短期数据(表单输入、切换等)。)

5。时间旅行调试:在 React 中,在调试过程中跟踪应用程序的状态成为一项繁琐的任务。Redux 使调试应用程序成为一个简单的过程。因为它表示应用程序在任何给定时间点的整个状态,所以它被广泛用于时间旅行调试。它甚至可以向服务器发送完整的错误报告!

6。强大的支持社区由于 redux 拥有庞大的用户社区,学习最佳实践变得更加容易,遇到困难时获得帮助,在不同的应用程序中重用您的知识。此外,redux 还有许多扩展,有助于简化代码逻辑和提高性能。