vuex报错 this.$store显示undefined

报错:vuex报错 this.$store显示undefined,使用vuex保存数据时,发现this.$store是undefined,
打印this,发现没有$store属性。
可能存在的问题

1.store文件中的vuex是否实例对象并且暴露出去

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
  state: {
    currentMenu: null

  },
  mutations: {
    selectMenu (state, val) {
      val.name === 'home' ? (state.currentMenu = null) : (state.currentMenu = val)
    }

  }

})

export default store// 用export default 封装代码,让外部可以引用

2.主文件main.js师傅成功注入store

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import Element from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import jsCookie from '@/utils/js-cookie.js'
import store from './store'
Vue.use(Element)

Vue.prototype.$jsCookie = jsCookie
Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
  el: '#app',
  router,
  store,
  components: { App },
  template: '<App/>'
})

3.如果上面都没有问题,那么需要查看packpage.json,查看vue与vuex版本
vue2对应vuex3,vue3对应vuex4

我的项目shi版本不对引起的 安装对应的版本既可以

pm install vuex@3.6.2 --save

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值