Vue新手求助:已安装vue-router但无法导入Router或VueRouter
Vue新手求助:已安装vue-router但无法导入Router或VueRouter
兄弟别慌!我刚入门Vue的时候也踩过一模一样的坑😉
你遇到的问题本质是版本不匹配:你看的2020-2022的教程基本都是针对Vue2 + vue-router@3的,但你执行npm install vue-router@(没指定版本)时,npm默认装了最新的vue-router@4——这是专门给Vue3用的版本,API完全变了,自然找不到旧教程里的Router或VueRouter!
怎么解决?分两种情况:
情况1:你用的是Vue3(现在新手推荐学这个)
别再找旧的导入方式了,vue-router@4的正确用法是导入createRouter和createWebHistory这些新API,举个最简单的例子:// 一般是在src/router/index.js里写路由配置 import { createRouter, createWebHistory } from 'vue-router' // 导入你的页面组件 import Home from '../views/Home.vue' import About from '../views/About.vue' const routes = [ { path: '/', component: Home }, { path: '/about', component: About } ] // 创建路由实例 const router = createRouter({ history: createWebHistory(), // 对应Vue2里的mode: 'history' routes }) export default router然后在main.js里挂载路由的方式也变了:
import { createApp } from 'vue' import App from './App.vue' import router from './router' createApp(App).use(router).mount('#app')情况2:你非要跟着旧教程用Vue2
那得把当前的vue-router卸载,装回对应Vue2的3.x版本:npm uninstall vue-router npm install vue-router@3这样就能用旧教程里
import VueRouter from 'vue-router'的写法了。
另外看你截图里的node_modules结构,确实是vue-router@4的目录,所以肯定是版本问题没错~新手的话更推荐直接学Vue3+vue-router4的最新内容,避免越学越懵哦!
备注:内容来源于stack exchange,提问作者Jesús Fernández
相关产品推荐
相关产品推荐

