当前位置:首页 > VUE

vue实现子路由

2026-02-19 02:37:04VUE

Vue 子路由的实现方法

在 Vue 项目中,子路由(嵌套路由)可以通过 Vue Router 实现。子路由允许在父路由的组件内嵌套其他路由组件,形成层级结构。

配置路由文件

router/index.js 中定义子路由。子路由通过 children 属性嵌套在父路由中。

import { createRouter, createWebHistory } from 'vue-router'

const routes = [
  {
    path: '/parent',
    component: () => import('@/views/Parent.vue'),
    children: [
      {
        path: 'child1',
        component: () => import('@/views/Child1.vue')
      },
      {
        path: 'child2',
        component: () => import('@/views/Child2.vue')
      }
    ]
  }
]

const router = createRouter({
  history: createWebHistory(),
  routes
})

export default router

父组件中添加路由出口

在父组件 Parent.vue 中,需要添加 <router-view> 作为子路由的出口。

<template>
  <div>
    <h2>父组件</h2>
    <router-view></router-view>
  </div>
</template>

子路由导航

可以通过 <router-link> 或编程式导航访问子路由。

<template>
  <div>
    <router-link to="/parent/child1">子路由1</router-link>
    <router-link to="/parent/child2">子路由2</router-link>
  </div>
</template>

默认子路由

可以为父路由设置默认子路由,当访问父路由时自动重定向到默认子路由。

{
  path: '/parent',
  component: () => import('@/views/Parent.vue'),
  children: [
    {
      path: '',
      redirect: 'child1'
    },
    {
      path: 'child1',
      component: () => import('@/views/Child1.vue')
    }
  ]
}

动态子路由

子路由也可以使用动态路径参数。

{
  path: '/parent/:id',
  component: () => import('@/views/Parent.vue'),
  children: [
    {
      path: 'child',
      component: () => import('@/views/Child.vue')
    }
  ]
}

命名子路由

可以为子路由设置名称,方便编程式导航。

vue实现子路由

{
  path: '/parent',
  component: () => import('@/views/Parent.vue'),
  children: [
    {
      path: 'child',
      name: 'childRoute',
      component: () => import('@/views/Child.vue')
    }
  ]
}

通过以上方法可以灵活地在 Vue 项目中实现子路由功能,构建复杂的页面层级结构。

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

相关文章

实现 vue ssr

实现 vue ssr

Vue SSR 实现方法 Vue SSR(Server-Side Rendering)通过服务器端渲染 Vue 应用,提升首屏加载速度和 SEO 友好性。以下是核心实现方法: 基础配置 安装必要依赖…

vue实现$.extend

vue实现$.extend

Vue 实现类似 jQuery 的 $.extend 功能 在 Vue 中实现类似 jQuery 的 $.extend 功能,可以通过多种方式完成。$.extend 主要用于合并多个对象的属性,Vue…

mvvm实现vue

mvvm实现vue

MVVM 模式在 Vue 中的实现 MVVM(Model-View-ViewModel)是一种前端架构模式,Vue 的设计灵感来源于此。以下是 MVVM 在 Vue 中的核心实现方式: 数据绑定(M…

vue实现微云

vue实现微云

Vue 实现微云功能 使用 Vue 实现类似微云的网盘功能需要结合前端框架、后端存储及文件处理技术。以下是关键实现步骤和代码示例: 前端框架搭建 使用 Vue CLI 创建项目基础结构,安装必要依赖…

vue实现追加

vue实现追加

追加数据到数组或列表 在Vue中追加数据到数组或列表,可以通过push方法或concat方法实现。以下是几种常见的实现方式: 方法一:使用push方法 this.items.push(newIte…

vue app 实现

vue app 实现

Vue App 实现步骤 创建Vue项目 使用Vue CLI或Vite初始化项目。Vue CLI适合传统项目,Vite适合现代轻量级应用。 npm create vue@latest my-vu…