当前位置:首页 > VUE

vue script 实现路由

2026-01-17 07:59:52VUE

使用 Vue Router 实现路由

在 Vue 项目中,可以通过 Vue Router 实现路由功能。以下是具体实现步骤:

安装 Vue Router

npm install vue-router

配置路由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(),
  routes
})

export default router

在 main.js 中引入路由

vue script 实现路由

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'

const app = createApp(App)
app.use(router)
app.mount('#app')

在组件中使用路由 在模板中使用 <router-link> 导航,使用 <router-view> 显示路由内容:

<template>
  <div>
    <router-link to="/">Home</router-link>
    <router-link to="/about">About</router-link>
    <router-view></router-view>
  </div>
</template>

编程式导航

可以通过 this.$routeruseRouter 进行编程式导航:

vue script 实现路由

// Options API
methods: {
  goToAbout() {
    this.$router.push('/about')
  }
}

// Composition API
import { useRouter } from 'vue-router'
const router = useRouter()
const goToAbout = () => {
  router.push('/about')
}

路由参数传递

可以通过动态路由或查询参数传递数据:

// 动态路由
{
  path: '/user/:id',
  component: User
}

// 获取参数
// Options API
this.$route.params.id

// Composition API
import { useRoute } from 'vue-router'
const route = useRoute()
const userId = route.params.id

路由守卫

可以使用路由守卫进行权限控制:

router.beforeEach((to, from, next) => {
  if (to.meta.requiresAuth && !isAuthenticated) {
    next('/login')
  } else {
    next()
  }
})

懒加载路由

通过动态导入实现路由懒加载:

{
  path: '/about',
  name: 'About',
  component: () => import('../views/About.vue')
}

以上方法涵盖了 Vue Router 的基本使用场景,可以根据项目需求选择合适的方式实现路由功能。

标签: 路由vue
分享给朋友:

相关文章

vue实现年历

vue实现年历

Vue 实现年历的方法 使用 Vue 实现年历可以通过组件化开发方式,结合日期计算和动态渲染完成。以下是两种常见的实现方式: 基于原生 Vue 的日历组件 创建 Calendar.vue 组件文件,…

vue实现多层评论回复

vue实现多层评论回复

Vue 实现多层评论回复 数据结构设计 多层评论通常采用嵌套结构,每个评论对象包含子评论数组。示例数据结构如下: comments: [ { id: 1, content: '…

vue设计与实现目录

vue设计与实现目录

以下是《Vue设计与实现》一书的典型目录结构(根据常见技术书籍及Vue核心内容整理): 响应式系统 响应式数据的基本原理 依赖收集与触发更新 实现简易响应式系统 Proxy与Reflec…

vue实现点击

vue实现点击

实现点击事件的基本方法 在Vue中实现点击事件可以通过v-on指令或@简写方式绑定。以下是常见的点击事件绑定方法: <template> <button v-on:click…

vue实现app

vue实现app

Vue 实现 App 的常见方法 使用 Vue 开发移动端 App 主要有两种主流方案:混合开发(Hybrid)和原生渲染。以下是具体实现方式和工具链: 混合开发方案(WebView 嵌入) 通…

vue实现详情

vue实现详情

Vue 实现详情页的常见方法 使用动态路由 在 Vue Router 中配置动态路由参数,通过 $route.params 获取详情 ID。示例路由配置: { path: '/detail/:…