Vuex4.x(一)初识vue3的状态管理-state

如题所述

第1个回答  2022-07-20

Vuex 是一个专为 Vue.js 应用程序开发的 状态管理模式 。它采用集中存储管理应用的所有组件的状态的方式,并以相应的规则保证状态以一种可预测的方式发生变化。
Vuex 也集成到 Vue 的官方调试工具 devtools extension (opens new window),提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。

两种使用方法:

https://next.vuex.vuejs.org/
官方给了两个流程图,一个简单的,我们就不看了。
还有一个复杂一点的,如下图:

应该没有翻译错吧。

组件问vuex,用户登录了没?vuex就只能问后端。
等等,不是应该在前端缓存一个登录状态吗?
用户在登录页面完成登录后,后端会返回一个token,然后缓存在前端,以后其他地方问是否登录,直接看这个token不就可以了吗?为啥还有问后端要数据?

如果不需要的话,我就想不出来还有啥状态关系到后端API了。

所以另一个理解就是,vuex其实是支持直接从后端获取数据,然后存入state的,也就是说可以把state当作大号data来看待。

我在这个流程里面加上了一个前端存储的功能,也就是说可以把 state 存在前端,这样刷新、关掉浏览器、关机重启等情况,state 的数据都不会丢失了。便于恢复状态。

我们先来定义一个简单的state,看看在vue3里面有什么变化。

一个简单类型(number)的count,还有一个引用类型的myObject。

我们打印出来看看效果:

未完待续。。。

https://naturefwvue.github.io/nf-vue-cnd/cnd/project-vuex/

https://github.com/naturefwvue/nf-vue-cnd/tree/main/cnd/project-vuex

相似回答
大家正在搜