1、什么是 Vuex?
1.1、官方文档的解释
Vuex 官方文档:vuex.vuejs.org/
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
1.2、个人理解
Vuex是一个为Vue.js设计的数据管理仓库,把各个组件公用的数据放到一个仓库里面进行统一的管理,这样简化了非父子组件间的数据共享,将数据放入同一个地方保管,其他组件都只需要引用 Vuex 进行管理,让程序可维护变高了,而且只要仓库里面的数据发生了变化,在其他组件中数据被引用的地方也会自动去更新。
2、Vuex 的四个核心概念:
state,用于存储状态或数据。getters,用于对 state 中的状态或数据进行加工。actions,里面的 action 函数,用于响应组件动作。mutations,里面的 mutation 函数,用于操作状态或数据。
3、为什么要用 Vuex
3.1、官方文档的解释:
Vuex 可以帮助我们管理共享状态,并附带了更多的概念和框架。这需要对短期和长期效益进行权衡。
如果您不打算开发大型单页应用,使用 Vuex 可能是繁琐冗余的。确实是如此——如果您的应用够简单,您最好不要使用 Vuex。一个简单的 store 模式就足够您所需了。但是,如果您需要构建一个中大型单页应用,您很可能会考虑如何更好地在组件外部管理状态,Vuex 将会成为自然而然的选择。
3.2、个人看法
- Vuex 解决的主要问题是不同组件间的通信,以达到对当前页面数据状态的管理。
- 既然是状态,它不会是持久化的,在页面刷新或关闭后,数据自动丢失。
- 简化了非父子组件间的数据共享,将数据放入同一个地方保管,其他组件都只需要引用 Vuex进行管理,提高了代码的维护性。
- 如果项目较小,组件比较少,完全可以不用 Vuex。