VueX插件、持久化存储、分包module模块vuex

本文介绍了VueX作为Vue.js应用程序的状态管理模式,包括其含义、使用场景和特点。详细阐述了VueX的安装、创建store、集成到项目及组件中的使用步骤。此外,还探讨了如何实现状态的持久化存储,并通过`vuex-persistedstate`插件进行配置。最后,讲解了如何将VueX拆分为多个模块进行管理,以及在组件中如何引用和使用这些模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、vueX

1、含义: Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式

2、使用场景:用户登录状态、用户购物状态

3、特点:

(1)集中式存储管理应用的所有组件的状态---存储在内存中,如果刷新页面则存储的数据消失

(2)保证状态以一种可预测的方式发生变化

(3)简化Vue组件间通讯

4、核心原理

 

5、使用步骤

 (1)下载安装: npm install vuex@4.0.2  --save  或    npm install vuex@next --save 

  (2)创建一个store文件夹,文件夹下面创建index,js文件

import {createStore} from 'vuex'

const store = createStore({
    state:{
        count:0 //状态数据
    },
    mutations:{
        PLUS(state){
            state.count++
        },
        MINUS(state){
            state.count--
        }
    },
    actions:{
        plus({commit}){
            commit('PLUS')
        },
        minus({commit}){
            commit('MINUS')
        }
    },
    getters:{
        num:(state)=>state.count
    }
})

export default store

 (3)main.js文件中集成store插件

import store from './store'
app.use(store)

(4)组件中使用store存储的值

(5)使用store存储的值的方法二:辅助函数map系列:mapState   mapMutations     mapActions   mapGetters

  • 组件中引入函数     import{mapActions,mapGetters} from 'vuex'
  • 获取store文件中的store状态值在computed中使用(也可以按照红色字体的方式使用)

 6、持久化存储插件

(1)安装

npm i vuex-persistedstate -S

(2)store文件夹下的index.js文件中引入

import createPersistedState from 'vuex-persistedstate'

 (3)使用

import createPersistedState from "vuex-persistedstate"
const store = createStore({
    state:{
        count:0
    },
    mutations:{
        Plus(state){
            state.count++
        },
        Minus(state){
            state.count--
        },
    },
    actions:{
        plus({commit}){
            commit('Plus')
        },
        minus({commit}){
            commit('Minus')
        }
    },
    getters:{
        num:(state)=>state.count
    },
   plugins: [createPersistedState({
      storage: window.sessionStorage,  //可改变存储方式:localStorage//没有后面代码,则是所有数据持久化存储
      reducer(state) {
          return {
          // 设置只储存state中的count
          count: state.count
        }
     }
  })]
})





7、module模块vuex

(1) 创建modeuls目录,存储vuex模块

 

 (2)index.js 引入模块通过modules集成

 (3)组件中的使用

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值