vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > Vue 3 路由使用

Vue 3 路由使用完全指南(整体流程)

作者:风吹夏回

这段文章详细介绍了Vue3路由的使用方法,涵盖了创建路由实例、注册路由插件和在组件中使用路由的三步流程,适合Vue3开发者参考和学习,感兴趣的朋友一起看看吧

一、整体流程:三个文件三步走

步骤文件做什么导入什么
1router/index.js创建路由实例createRouter, createWebHistory
2main.js注册路由插件router 实例
3组件使用路由useRouter, useRoute

二、第一步:创建路由实例

// 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: '/',
    name: 'home',
    component: Home
  },
  {
    path: '/about',
    name: 'about',
    component: About
  }
]
const router = createRouter({
  history: createWebHistory(), // 不带 # 的 URL
  routes
})
export default router

两种路由模式

模式方法URL 示例服务器配置
HistorycreateWebHistory()/about需要
HashcreateWebHashHistory()/#/about不需要

三、第二步:注册路由

// 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')

四、第三步:在组件中使用路由

4.1 页面跳转

<script setup>
import { useRouter } from 'vue-router'
const router = useRouter()
// 路由名称跳转(推荐)
router.push({ name: 'about' })
// 路径跳转
router.push('/about')
// 返回上一页
router.back()
router.go(-1)
</script>

4.2 获取路由参数

<script setup>
import { useRoute } from 'vue-router'
const route = useRoute()
// 获取路径参数 /user/:id
console.log(route.params.id)
// 获取查询参数 ?keyword=hello
console.log(route.query.keyword)
</script>

4.3 声明式跳转(模板中)

<template>
  <router-link to="/about">关于我们</router-link>
  <router-link :to="{ name: 'home' }">首页</router-link>
</template>

五、路由出口:<router-view />

路由匹配的组件会渲染在 <router-view /> 的位置:

<!-- App.vue 根组件 -->
<template>
  <div>
    <nav>
      <router-link to="/">首页</router-link>
      <router-link to="/about">关于</router-link>
    </nav>
    <!-- 路由页面在此处显示 -->
    <router-view />
  </div>
</template>

六、完整项目结构

src/
├── main.js            # 注册路由
├── App.vue            # 根组件,包含 <router-view />
├── router/
│   └── index.js       # 路由配置
└── views/
    ├── Home.vue       # 首页
    └── About.vue      # 关于页

七、常见错误排查

现象可能原因
点击跳转没反应router.push 拼写错误
跳转报错 router is undefined组件中没写 const router = useRouter()
整个路由不工作main.js 中没有 app.use(router)
URL 变了但页面没变根组件缺少 <router-view />
导入报错文件路径不正确

八、记忆口诀

创建 → 注册 → 使用,三步缺一不可

到此这篇关于Vue 3 路由使用完全指南的文章就介绍到这了,更多相关Vue 3 路由使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文