vuex中为什么更新其中一个状态的值还能同步更新另一个状态的

vuex中为什么更新其中一个状态的值还能同步更新另一个状态的,第1张

状态值相同。在vuex中,更新其中一个状态的值,还能同步更新另一个状态是由于状态值相同,因此可以同时更新。Vuex是一个专为Vue.js应用程序开发的状态管理模式加库。它采用集中式存储管理应用的所有组件的状态。

路由刷新是无刷新跳转,表面看起来就像是一个app应用,表现效果就像你写的 tab 选项卡,所有的数据都还存在内存里,页面是无重载的。

F5刷新做了什么事呢,重新载入页面,销毁之前所有的数据。

所以,F5页面刷新,页面销毁之前的资源,重新请求,因此写在生命周期里的vuex数据是重新初始化,无法获取的。

在App.vue中使用

在store下的index.js中

存储到sessionStorage(cookie与localStore一样):

vuex-persistedstate默认持久化所有state,指定需要持久化的state,配置如下:

plugins后面加数组可以配置多个

vuex的五个属性及使用方法如下:

基本属性:

1. state:vuex的基本数据,用来存储变量

2. geeter:从基本数据(state)派生的数据,相当于state的计算属性

3. mutation:提交更新数据的方法,必须是同步的(如果需要异步使用action)。每个 mutation 都有一个字符串的 事件类型 (type) 和 一个 回调函数 (handler)。

回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数,提交载荷作为第二个参数。

4. action:和mutation的功能大致相同,不同之处在于 ==》1. Action 提交的是 mutation,而不是直接变更状态。 2. Action 可以包含任意异步 *** 作。

5. modules:模块化vuex,可以让每一个模块拥有自己的state、mutation、action、getters,使得结构非常清晰,方便管理。

Vuex的用法:

新建vue项目testApp ==》 在testApp中建store文件 ==》 store文件下又有modules文件夹和getter.js 和 index.js ==》 store文件下建user.js

在项目的main.js中引入  import store from './store'

在store文件下的index.js中引入


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11459154.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存