一、当我在调用store时报错: Cannot read property 'state' of undefined
具体代码如下图
解决过程:
各种尝试有点无计可施,感谢网友哪种分享,给了我解决的思路,所以我把我的解决过程及最终方案也分享给大家,希望能帮忙到别人。
1、新建简单test页。先test页直接引用store.js
先是报错,发现原来 vue3 不可以直接以 import Vue from 'vue' 引用。
在store.js中去掉 import Vue from 'vue' 、Vue.use(Vuex) ,修改如下,成功调用。
import store from '@/store/store.js'
methods: { increment () { store.commit('increment') console.log(store.state.count) } }
2、在mian.js 挂载,通过this.$store.state.count 调用。
一直会报 Cannot read property 'state' of undefined
先是在mian.js中增加打印:console.log('main.js来了。不是vue3环境 - 执行代码块') 、console.log('是vue3环境 - 执行代码块')
打印结果说明我是vue3版本。之前我一直在// #ifndef VUE3 块中尝试说明地方就搞错了。
一直报错,说明就是挂载不成功。最后了如下修改解决。
app.use(store) 挂载。要注意挂载的地方。如果有帮助到你,多多支持,能帮助到更多的人。
// #ifdef VUE3 console.log('是vue3环境 - 执行代码块') import {createSSRApp} from 'vue' import App from './App.vue' import store from '@/store/store.js' console.log('mian中:'+store.state.count) export function createApp() { const app = createSSRApp(App) app.use(store) return { app, store } } // #endif
标签:console,undefined,read,app,js,state,import,store From: https://www.cnblogs.com/xbding/p/17156328.html