vue-cli 使用vuex 报错store is not defined

我配置完vuex后发现在组件内无法使用

这是main.js

import Vue from 'vue'
import 'es6-promise/auto'
import App from './App'
import router from './router'
import vuex from 'vuex'

/* eslint-disable no-new */
Vue.use(vuex);
var store = new vuex.Store({//store对象
    state:{
        show:"aaaaaaa"
    }
})

new Vue({
  el: '#app',
  router,
  store,//使用store
  components: { App },
  template: '<App/>'
})

helloworld.vue

<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
    <h2>Essential Links</h2>
    <h1>11111{{store.state.count}}</h1>
  </div>
</template>

<script>
export default {
  created(){
      this.fetchData()
  },
  watch:{
      '$route':'fetchData'
  },
  methods:{
      //路由越换
    fetchData(){
      console.log("1111")
      console.log(store.state.count)
    },
  },
  name: 'HelloWorld',
  data () {
    return {
      msg: 'Welcome to Your Vue.js App'
    }
  },
}
</script>

然后就会报错

clipboard.png

大佬们,这是我哪里配置的不对么,该如何修改

阅读 17.4k
1 个回答

换成 this.$store.state.count试试

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进