vuex使用mapgetters

vuex使用mapgetters

首先使用vuex

这是index.js文件

import {createStore} from 'vuex'
import getters from "@/store/getters";

let files = require.context('./modules', false, /\.js$/);
let modules = {}
files.keys().forEach(key => {
    modules[key.replace(/(\.\/|\.js$)/g, '')] = files(key).default
}) //自动引入module文件夹下的全部文件

export default createStore({
    modules,
    getters
})

是modules下的threed.js文件

import Storage from '@/utils/storage'

export default{
    namespaced: true,
    state:{
     status:true
    },
    mutations:{
        "CHANGE_STATUS":(state,info)=>{
            console.log(info,'change');
            let status=  Storage.getItem('threed_status');
            if(info[1]){
                if (status) {
                    Storage.clearItem('threed_status');
                }
                state.status = info[0];
                Storage.setItem('threed_status',state)
            }else{
                if(status){
                    state.status = status.status;
                }
            }
           
        }
    },
    
}

是getters.js文件

export default {
    threed: (state) => state.threed.status,
}

使用mapgetters

import { mapGetters } from "vuex";
computed: {
     ...mapGetters(["threed"]),
  },
mounted() {
this.$store.commit("threed/CHANGE_STATUS",[true,true]);
    console.log(this.threed);
  },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值