当前位置:首页 > 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 中引入路由

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 进行编程式导航:

// 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()
  }
})

懒加载路由

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

vue script 实现路由

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

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

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

相关文章

vue实现switch

vue实现switch

Vue 实现 Switch 开关组件 在 Vue 中实现 Switch 开关组件可以通过自定义组件或使用现有 UI 库完成。以下是几种常见实现方式: 自定义 Switch 组件 创建一个基础 Sw…

vue实现切换

vue实现切换

Vue 实现切换功能的方法 在 Vue 中实现切换功能可以通过多种方式实现,以下是一些常见的方法: 使用 v-if 和 v-else 指令 通过条件渲染实现切换功能,适用于简单的显示/隐藏场景。…

vue 简单实现

vue 简单实现

以下是 Vue 的简单实现示例,涵盖基础模板、数据绑定、方法及生命周期: 基础模板与数据绑定 <div id="app"> <p>{{ message }}</…

vue实现组件跟随

vue实现组件跟随

实现组件跟随的常见方法 使用CSS定位 通过CSS的position: fixed或position: absolute属性实现组件跟随。需要结合JavaScript计算目标元素的位置。 <t…

vue实现的setdata

vue实现的setdata

Vue 中实现类似小程序 setData 的方法 在小程序中,setData 方法用于异步更新页面数据并触发视图渲染。Vue 中可以通过以下几种方式实现类似功能: 直接使用 Vue 的响应式系统 V…

Vue实现路由监

Vue实现路由监

Vue实现路由监听的方法 在Vue中,可以通过多种方式监听路由变化,以下是常见的实现方法: 使用Vue Router的全局前置守卫 router.beforeEach((to, from, nex…