news 2026/6/13 7:03:59

Vue 3 + Vue Router 的路由配置,简单示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vue 3 + Vue Router 的路由配置,简单示例

配置 Vue Router 是实现页面导航的基础,我会用最简单、最适合新手的方式,一步步教你完成 Vue 3 + Vue Router 的路由配置,全程代码可直接复制使用。

一、前置准备(安装依赖)

首先确保你已经安装了 Vue Router,打开终端,在项目根目录执行:

bash

运行

# npm 安装 npm install vue-router@4 # 或 yarn 安装(如果用 yarn) yarn add vue-router@4

注意:Vue 3 对应 Vue Router 4,Vue 2 对应 Vue Router 3,别装错版本。

二、核心配置步骤(以 Vue 3 + Vite 为例)

1. 创建路由配置文件

在项目的src目录下新建router文件夹,再创建index.js文件(这是路由的核心配置文件):

javascript

运行

// src/router/index.js import { createRouter, createWebHistory } from 'vue-router' // 1. 导入需要路由的组件(比如你的 Test 组件) import Test from '../components/Test.vue' // 示例:如果有 About 组件,也可以导入 // import About from '../components/About.vue' // 2. 定义路由规则:每个规则对应一个页面 const routes = [ { path: '/', // 访问路径(网址栏里的地址) (http://localhost:5173/) name: 'test', // 路由名称(可选,但推荐加,方便编程式导航) component: Test // 该路径对应渲染的组件 }, // 示例:新增 About 页面的路由规则 // { // path: '/about', // name: 'about', // component: About // } ] // 3. 创建路由实例 const router = createRouter({ history: createWebHistory(), // 采用 HTML5 历史模式(无 # 号的URL) routes // 传入上面定义的路由规则 }) // 4. 导出路由实例,供 main.js 使用 export default router
2. 在入口文件挂载路由

打开项目根目录的src/main.js,挂载路由到 Vue 实例:

javascript

运行

// src/main.js import { createApp } from 'vue' import App from './App.vue' // 导入上面创建的路由实例 import router from './router' const app = createApp(App) // 挂载路由 app.use(router) app.mount('#app')
3. 在根组件中添加路由视图

打开src/App.vue,添加<router-view>标签(路由匹配的组件会渲染在这里):

vue

<!-- src/App.vue --> <template> <div id="app"> <!-- 导航栏(可选,配合 <router-link> 使用) --> <nav> <router-link to="/">Test 页面</router-link> <!-- <router-link to="/about">About 页面</router-link> --> </nav> <!-- 路由视图:核心!匹配的组件会显示在这里 --> <router-view /> </div> </template> <style> /* 可选:给激活的导航链接加样式 */ router-link.active { color: red; font-weight: bold; } </style>

三、关键配置项解释

表格

配置项作用
path访问路径(如//about),决定网址栏显示的地址
name路由名称,编程式导航时可用(如router.push({ name: 'test' })),更灵活
component该路径对应渲染的组件,需提前导入
createWebHistory开启 HTML5 历史模式(URL 无 # 号),若用createWebHashHistory则是哈希模式(带 #)
<router-view>路由组件的挂载点,必须有,否则页面不会显示内容

四、测试是否配置成功

  1. 确保你的Test.vue组件存在(比如src/components/Test.vue):

vue

<!-- src/components/Test.vue --> <template> <div>这是 Test 页面</div> </template>
  1. 启动项目(npm run dev),访问http://localhost:5173/,能看到「这是 Test 页面」就说明配置成功了。

总结

  1. 路由配置核心是「定义规则 → 创建实例 → 挂载到 Vue → 添加视图容器」四步;
  2. routes数组里的每个对象对应一个页面,path是访问路径,component是对应组件;
  3. <router-view>是路由组件的渲染容器,必须在根组件中添加,否则页面无法显示。

router-Link,与Router-Link这样写行吗?

在 Vue 模板中,router-LinkRouter-Link这两种写法不推荐,虽然大部分情况下能运行,但不符合 Vue 的规范,还可能引发潜在问题。我帮你理清不同写法的区别和正确用法:

一、核心结论

表格

写法是否可行规范与否推荐度
<router-link>✅ 可行✅ 规范🌟 强烈推荐
<RouterLink>✅ 可行✅ 规范⭐ 可选
<router-Link>✅ 勉强可行❌ 不规范❌ 不推荐
<Router-Link>✅ 勉强可行❌ 不规范❌ 不推荐

二、详细解释

  1. 为什么不推荐router-Link/Router-Link

    • HTML 标签本身是大小写不敏感的,但 Vue 对组件名的解析遵循「约定」:
      • 模板中用kebab-case(短横线全小写)<router-link>(符合 HTML 标签习惯)
      • 脚本中用PascalCase(大驼峰)import { RouterLink } from 'vue-router'
    • 混合大小写(如router-Link)会让代码风格不统一,部分 IDE / 编辑器会报错提示,也不符合团队协作的规范。
  2. 特殊情况:如果非要用混合大小写会怎样?

    • 开发环境运行大概率没问题(Vue 会做兼容);
    • 生产环境打包可能因代码压缩 / 格式化工具的处理,导致组件识别异常;
    • 团队协作时会被代码规范检查工具(如 ESLint)标红,增加沟通成本。
  3. 三、补充:Vue 组件名的命名规范

    Vue 官方明确建议:

  4. 模板中:使用 kebab-case(全小写 + 短横线),如<router-link><my-component>
  5. 脚本中:使用 PascalCase(大驼峰),如import RouterLinkconst MyComponent = { ... }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/13 6:59:19

国产“虾“界百团大战:30款Claw混战,谁在真正夹住未来?

&#x1f990; 国产"虾"界百团大战&#xff1a;30款Claw混战&#xff0c;谁在真正夹住未来&#xff1f;一、巨头乱斗&#xff1a;名字越花&#xff0c;心里越慌&#x1f7e3; 腾讯系&#xff1a;内部赛马的“钳子矩阵”腾讯似乎想把“社交内容办公”的所有场景都用“…

作者头像 李华
网站建设 2026/5/18 22:52:35

告别单调系统光标:苹果风格鼠标指针美化完全指南

告别单调系统光标&#xff1a;苹果风格鼠标指针美化完全指南 【免费下载链接】apple_cursor Free & Open source macOS Cursors. 项目地址: https://gitcode.com/gh_mirrors/ap/apple_cursor 厌倦了千篇一律的系统默认鼠标指针&#xff1f;想要为你的Windows或Linux…

作者头像 李华
网站建设 2026/5/18 22:52:26

新手必看!多因素方差分析从理论到实践:以企业贷款数据为例

新手必看&#xff01;多因素方差分析从理论到实践&#xff1a;以企业贷款数据为例 当你面对一组企业贷款数据&#xff0c;发现担保方式和信用等级都可能影响贷款金额时&#xff0c;如何判断哪些因素真正起作用&#xff1f;多因素方差分析就是解开这个谜团的钥匙。不同于单因素分…

作者头像 李华
网站建设 2026/5/18 22:52:38

图像处理新手必看:3种常见噪声的识别与去除实战(附Python代码)

图像处理新手必看&#xff1a;3种常见噪声的识别与去除实战&#xff08;附Python代码&#xff09; 在数字图像处理领域&#xff0c;噪声就像不请自来的客人&#xff0c;总是悄无声息地破坏我们的图像质量。无论是用手机拍摄的照片&#xff0c;还是医学影像、卫星图像&#xff0…

作者头像 李华
网站建设 2026/5/18 22:52:36

NLP新手必看:如何用NLTK快速玩转语料库(附实战代码)

NLP新手实战指南&#xff1a;用NLTK探索语料库的五大核心技巧 刚接触自然语言处理时&#xff0c;许多学习者会陷入一个误区——花费大量时间收集和清洗原始文本&#xff0c;却忽略了现成工具的价值。NLTK作为Python生态中最成熟的NLP工具库之一&#xff0c;内置了数十种经过标注…

作者头像 李华