Reducer 简介
学习如何使用 TypeScript 优化 React 应用程序。
React 应用开发挑战
许多 React 应用的示例通常都很小且易于理解。但在现实世界中,React 应用往往会发展到非常庞大的规模,以至于我们无法将所有上下文都记在脑海中。这常常导致意外的错误:某个值并不是我们以为的样子。我们以为某个对象具有特定属性?结果发现它在某处变成了 undefined。我们传入的那个函数?也变成了 undefined。我们试图匹配的字符串?某天深夜加班时不小心拼错了。
使用 TypeScript 提升代码质量
在 React 应用中使用 TypeScript 可以通过提供
使用 Reducers 进行状态管理
大型应用往往伴随着日益复杂的状态管理问题。Reducers 是一种强大的模式,用于管理客户端应用中的状态。Reducer 最初因 Redux 而流行,如今已作为内置功能集成到 React 中,通过 useReducer 钩子实现,但其本身与框架和语言无关。归根结底,Reducer 只是一个函数。Redux 和 React 的 useReducer 为其增加了触发更新的功能。我们可以将 Redux 用于任何前端框架,甚至不依赖框架也能使用。如果我们愿意,也可以轻松实现自己的 Redux 版本。
尽管如此,Redux(以及基于它的其他 Flux 架构实现)常被批评需要编写大量样板代码,使用起来略显繁琐。为了避免无意间制造双关语,我们可以利用 TypeScript 减少所需的样板代码量,让使用 Reducers 的整体体验变得更加顺畅。