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: ''
})

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

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

pm install [email protected] --save

vuex报错 this.$store显示undefined_第1张图片

你可能感兴趣的:(vue.js,前端)