vue3工程引用vue2模块文件,如果代码没改的话,编译运行时可能会报错:
SyntaxError: The requested module '/@fs/D:/HBuilderX.3.8.7.20230703/HBuilderX/plugins/uniapp-cli-vite/node_modules/@dcloudio/uni-h5-vue/dist/vue.runtime.esm.js' does not provide an export named 'default'
因此,要对引用过来的vue2模块文件做一些改动,才能兼容。
vue2的写法:
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
// ...
},
mutations: {
// ...
},
actions: {
// ...
}.
getters: {
// ...
}
})
vue3改动后的写法:
// import Vue from 'vue' 不需要导入Vue了
// import Vuex from 'vuex' 导入vuex改成下面这样
import { createStore } from 'vuex'
// Vue.use(Vuex) 这句也不需要了
// 使用 createStore 创建 Vuex store
// export default new Vuex.Store({
export default createStore({
// ...
})