报错样式:

情况一:

1.问题描述


使用webpack构建Vue单页面应用项目,项目运行时,浏览器报“Uncaught TypeError: WEBPACK_IMPORTED_MODULE_2__router.a is not a constructor”,组件中的内容也不能正常显示,<router-link :to="{path:'animal'}">to animal</router-link>也不能正常出现<a>标签的效果。页面时空白的。


main.js代码如下:

2.解决思路与方法


分析
VueRouter的引入不能使用npm安装时自带的

import VRouter from './router'

因为./表示当前src目录,目录下并没有router文件,所以webpack会找不到,所以会报错。

解决
将import VRouter from './router'改为import VRouter from 'vue-router'

import VRouter from 'vue-router'

修改之后,npm运行项目正常。

情况二:
 

vue-router 版本不对

你所建立的项目 是 vue2x ,但是却下载了 vue-router4x

而 vue-router4x 适用于 vue3x

所以你需要卸载 vue-router4x,重新下载 vue-router3x

卸载:

npm uninstall vue-router

安装:(3版本)

npm i vue-router@3

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐