首页 > 解决方案 > vue2项目编译失败

问题描述

我该如何解决?由于页面未加载(显示没有任何其他内容的白页。)

WAIT  Compiling...                                                                                                                                                                                                    
98% after emitting CopyPlugin

 WARNING  Compiled with 4 warnings                                                                                                                                                                                     
 warning  in ./src/main.js

"export 'createApp' was not found in 'vue'

 warning  in ./src/router/index.js

"export 'createRouter' was not found in 'vue-router'

 warning  in ./src/store/index.js

"export 'createStore' was not found in 'vuex'

 warning  in ./src/router/index.js

"export 'createWebHistory' was not found in 'vue-router'

我刚刚解决了另一个问题,现在我得到了这个。请问怎么解决?

标签: vue.jsvuejs2vue-router

解决方案


这些错误表明您正在尝试使用 Vue 3 API(即createApp),但您已经vue@2.x安装了(标记也是一个线索)。同样,您正在使用 Vue Router 4 的 API(即createRouter),但您已经vue-router@3.x安装了。

解决方案

您可以安装最新版本的依赖项:

npm i -S vue@3 vue-router@4

或者,您可以使用较旧的 API。即从 Vue 3 / Vue Router 4 代码切换:

// main.js
import { createApp } from 'vue'
import router from './router'

createApp(App).use(router).mount('#app')
// router.js
import { createRouter } from 'vue-router'

export default createRouter(/*...*/)

...到 Vue 2 / Vue Router 3 代码:

// main.js
import Vue from 'vue'
import router from './router'

new Vue({
  router,
  render: h => h(App),
}).$mount('#app')
// router.js
import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

export default new VueRouter(/*...*/)

推荐阅读