VUEX核心内容及用法

vuex是实现组件全局状态(数据)管理的一种机制,可以方便组件之间数据的共享。

1. 基本使用

(1)下载vuex依赖包

npm install vuex --save

(2)导入vuex包

import Vuex from ‘vuex’
Vue.use(Vuex)

(3)创建store对象

const store = new Vuex.Store(
state:{
// state中存放的是全局共享的数据
})

(4)将store对象挂载到vue实例中

new Vue({
el:’#app’,
render:h=>h(app),
router,
store
})

2.核心内容

1.State:

内容:State提供唯一的公共数据源,所有共享的数据都要统一放到Store的State中进行存储。
实现方法
1.使用 {{$store.state.xx}}获取xx属性
2.使用 ...mapState([xx])获取xx属性

2.Mutations:

内容:Mutation用于变更Store中的数据。
① 只能通过mutations变更Store中的数据,不可以直接操作Store中的数据。
实现方法
1.使用this.$store.commit(‘方法名’)/this.$store.commit(‘方法名,参数’)进行调用
2.使用 ...mapMutations(['方法名', '方法名'])进行调用

3.Actions:

内容:触发actions异步任务时携带参数
实现方法
1.使用this.$store.dispatch('方法名')/this.$store.dispatch('方法名',参数)进行调用
2.使用:...mapActions(['方法名', '方法名'])进行调用

4.Getter:

内容:对state中的数据进行包装
实现方法
1.使用{{$store.getters.showNum}}进行调用
2.使用 ...mapGetters(['方法名'])进行调用

注意:
在使用第一种方法的时候不需要在组件内导入什么,State和Getter直接取值,Mutations和Actions的方法可在组件的methods中调用或者直接与@click="方法名"调用。
在使用第二种方法的适合需要在组件内
import {mapGetters, mapMutations, mapState, mapActions} from 'vuex'
State和Getter的取值在组件中与methods同级创建computed调用第二种方法,Mutations和Actions的方法可在组件的methods中调用或者直接与@click="方法名"调用。

3.代码块

①store.js:

创建store对象
导入vuex

②main.js:

main.js中进行挂载

③state使用方法:

定义
在这里插入图片描述
调用
方法一:
在这里插入图片描述
方法二:
在这里插入图片描述

④Mutations使用方法:

定义
在这里插入图片描述
调用
方法一:
在这里插入图片描述
方法二:
在这里插入图片描述

③Actions使用方法:

定义
在这里插入图片描述
调用
方法一:
在这里插入图片描述
方法二:
在这里插入图片描述

③Getter使用方法:

定义
在这里插入图片描述
调用
方法一:
在这里插入图片描述
方法二:
在这里插入图片描述
(Ending)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值