vuex 的语法糖(mapState, mapGetters, mapActions, mapMutations)

Vuex语法糖

vuex

import {
	token
} from '@/config/AppParameter.js';
/* 用户信息 */
const state = {
	UserInfo: {}, //用户信息
	accessToken: uni.getStorageSync(token) || '', //token
	DayList: []
};
const getters = {
	ReturnAccessToken(state) {
		return state.accessToken;
	},
	ReturnUserInfo(state) {
		return state.UserInfo;
	}
};

const mutations = {
	UpdateaccessToken(state, token) {
		state.accessToken = token;
	},
	UpdateUserInfo(state, userInfo) {
		state.UserInfo = userInfo;
	}
};

const actions = {
	SUpdateaccessToken(ctx, token) {
		ctx.commit('UpdateaccessToken', token);
	},
	SUpdateUserInfo(ctx, userinfo) {
		ctx.commit('UpdateUserInfo', userinfo);
	},
};

export default {
	namespaced: true,
	state,
	getters,
	mutations,
	actions
};

index.js

import Vue from 'vue';
import Vuex from 'vuex';

Vue.use(Vuex);

import man from './modules/man.js';
import user from './modules/user.js';

const store = new Vuex.Store({
	modules:{
		man,
		user
	}
});

export default store;

获取

import {
		mapState
	} from "vuex"


//计算属性监听
computed: {
			//扩展运算符,深拷贝,拿到值
			...mapState({
				UserInfo: state => state.user.UserInfo,
				StoreDataList: state => state.user.StoreDataList,
				DayList: state => state.user.DayList
			})
		},

vuex的语法糖还包括mapGetters, mapActions, mapMutations,语法一致,一般使用mapState就足够了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值