一、什么是状态管理器
随着React和Vue等框架的广泛运用,前端状态管理器逐渐成为前端开发比不可少话题。例如React有倍受欢迎的Redux,再如Vue标配的状态管理器Vuex,都是业内相对成熟的状态管理器;
react和vue有些不同,react没有自己专属的状态管理方式。它使用的其实是js相关的状态管理器。市面上 react 的状态管理工具非常多,例如:redux、mobx、recoil等。视图可以引起状态的改变,而状态的改变会导致视图的二次渲染。
二、 什么时候使用状态管理器
1、用户的使用方式复杂
- 用户的使用方式复杂
- 不同身份的用户有不同的使用方式(比如普通用户和管理员)
- 多个用户之间可以协作
- 与服务器大量交互,或者使用了WebSocket
- View要从多个来源获取数据
2、组件角度
- 某个组件的状态,需要共享
- 某个状态需要在任何地方都可以拿到
- 一个组件需要改变全局状态
- 一个组件需要改变另一个组件的状态