尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

例子:vue3+vite+router创建导航菜单

例子:vue3+vite+router创建导航菜单
📅 发布时间:2026/6/18 6:02:29

第一部分

1、初始化项目

npm init vite@latest

npm run dev :运行项目

q+Enter:退出运行

image

image

 

 

 2、安装路由依赖

npm install vue-router@4  # Vue3 对应 vue-router 4.x 版本

 

第二部分:

创建页面组件

在 src/views 目录下创建三个页面组件:
  1. 首页(HomeView.vue)
<template><div class="page home-page"><h2>首页</h2><p>这是网站首页内容</p></div>
</template><style scoped>
.page {padding: 20px;
}
.home-page {background-color: #f0f9ff;
}
</style>
  1. 关于页(AboutView.vue)
<template><div class="page about-page"><h2>关于我们</h2><p>这是关于页面内容</p></div>
</template><style scoped>
.page {padding: 20px;
}
.about-page {background-color: #fff0f0;
}
</style>
  1. 文档页(DocView.vue)
<template><div class="page doc-page"><h2>文档中心</h2><p>这是文档页面内容</p></div>
</template><style scoped>
.page {padding: 20px;
}
.doc-page {background-color: #f0fff4;
}
</style>

创建导航组件

在 src/components 目录下创建导航栏组件 Navbar.vue
<template><nav class="navbar"><!-- 路由链接:点击切换页面,无需刷新 --><router-link to="/" class="nav-item" active-class="active">首页</router-link><router-link to="/about" class="nav-item" active-class="active">关于</router-link><router-link to="/doc" class="nav-item" active-class="active">文档</router-link></nav>
</template><style scoped>
.navbar {display: flex;padding: 0 20px;background-color: #333;
}.nav-item {color: white;text-decoration: none;padding: 15px 20px;transition: background-color 0.3s;
}.nav-item:hover {background-color: #555;
}/* 激活状态样式(当前选中的导航项) */
.active {background-color: #007bff;
}
</style>

配置路由

在 src 目录下创建 router 文件夹,新建 index.ts 路由配置文件:
// src/router/index.ts
import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router'
// 导入页面组件
import HomeView from '../views/HomeView.vue'
import AboutView from '../views/AboutView.vue'
import DocView from '../views/DocView.vue'// 路由规则
const routes: RouteRecordRaw[] = [{path: '/', // 首页路径name: 'Home',component: HomeView},{path: '/about', // 关于页路径name: 'About',component: AboutView},{path: '/doc', // 文档页路径name: 'Doc',component: DocView}
]// 创建路由实例
const router = createRouter({history: createWebHistory(import.meta.env.BASE_URL), // 基于 HTML5 History 模式routes // 注入路由规则
})export default router

修改根组件(App.vue)

整合导航栏和路由出口(路由匹配的页面会在这里渲染):
<!-- src/App.vue -->
<template><div class="app"><!-- 导航栏 --><Navbar /><!-- 路由出口:当前匹配的页面组件会渲染在这里 --><router-view /></div>
</template><script setup lang="ts">
// 导入导航栏组件
import Navbar from './components/Navbar.vue'
</script><style scoped>
.app {min-height: 100vh;display: flex;flex-direction: column;
}
</style>

配置入口文件(main.ts)

确保已正确挂载路由(通常初始化项目时已配置,确认即可):
// src/main.ts
import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import router from './router/index' // 导入路由配置createApp(App).use(router) // 挂载路由.mount('#app')

 

运行效果

清空项目自带的src/style.css文件,执行 npm run dev 启动项目,访问 http://localhost:5173 会看到:
  • 顶部有黑色导航栏,包含「首页」「关于」「文档」三个链接
  • 点击不同链接,下方内容区域会切换对应的页面(无需刷新)
  • 当前选中的导航项会显示蓝色背景(active-class 效果)

image

 

相关新闻

  • LGR-246 解题报告
  • (薛定谔のCSP-S)模拟35 2025.10.20
  • CSP-S模拟36

最新新闻

  • PyCaret低代码实现房价预测:从数据准备到模型上线全链路
  • 【Springboot毕设全套源码+文档】基于springboot的智慧仓库(丰富项目+远程调试+讲解+定制)
  • 2026年6月PE排水管企业推荐指南 - 多才菠萝
  • 全维度测评报告:2026 杭州黄金回收报价套路拆解,称重、验金、扣费猫腻逐项核验 - 奢侈品回收评测
  • DSP56800到DSP56800E代码移植:AGU寄存器加载策略与兼容性问题详解
  • Python自动化测试实战:从Selenium到Pytest的完整技术栈解析

日新闻

  • 2026年不锈钢卷板厂家推荐排行榜:冷轧热轧/304/201不锈钢卷板,高颜值耐腐蚀源头厂家实力精选 - 企业推荐官【官方】
  • FLUX.1-dev FP8模型实战指南:24GB以下显卡高效部署方案
  • 2026佛山长途搬家价目表:跨省跨市搬家费用完整计算指南 - 从来都是英雄出少年

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号