vuex mapState

import { mapState } from 'vuex'

  computed: {
    ...mapState({
      userInfo: (state) => state.user.userInfo
    })
  },

vuex

const state= () => {
  return {
    token: getToken(),
    userInfo: {},
    area: [], // 省市区
    leaders: [],
    permissionList: [], // 权限集合
    isAssists: false, // 协销商机
    isGetRole: false,
    depUser: [],
    userRole: '',
    seatsInfo: '', // 座席信息
    callUniqueId: null, // 拨打成功后返回的data
    webSocketMsg: '', // 建立webSocket 服务端返回的信息
    overdueProduct: []
  }
}

const mutations = {
  SET_USERINFO: (state, value) => {
    state.userInfo = value
  },
}

const actions = {
async getAccountInfo ({ commit }) {

    commit('SET_USERINFO', result.data)
    commit('SET_OVERDUEPRODUCT', overdueProduct.data)

    return { ...result.data, ...{ productList: YxgStatus.data.concat(overdueProduct.data), overdueProduct: overdueProduct.data } }
  },
}


其他地方使用
  store.dispatch('user/getAccountInfo').then(e => {
	其中 e 为  return出来的数据
 })



还有一种是包装成 Promise
getUserPermission ({ commit, state }, list) {
    return new Promise((resolve, reject) => {
      可以使用接口
      resolve list
    }
  })  

 store.dispatch('user/getUserPermission').then(e => {
	其中 e 为  return出来 list 的数据
 })

在这里插入图片描述
modile 下可以定义多个模块

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

index 引入

import user from './module/user'
import menu from './module/menu'

 modules: {
    user,
    menu
  },
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值