vue设置子路由

您可以在原有的路由配置下加入children字段来增加子路由。[{ path : '/' , component :xxx}, { path : 'xx' , component :xxx}]。注意:children里面的path 不要加 / ,加了就表示是根目录下的路由。

Vue子路由简介

Vue.js是一个用于构建用户界面的渐进式框架,它的核心库专注于视图层,易于与其他库或已有项目整合,VueRouter是Vue.js官方的路由管理器,它允许我们实现单页面应用(SPA)的功能,如嵌套页面、懒加载等,在VueRouter中,我们可以通过配置路由规则来实现子路由的功能。

如何创建子路由

1、我们需要安装并引入VueRouter:

vue设置子路由

npm install vue-router
import Vue from 'vue';
import VueRouter from 'vue-router';

2、我们需要创建一个VueRouter实例,并配置路由规则,在这个例子中,我们将创建一个名为Parent的父组件,它包含两个子组件:Child1Child2,我们将在父组件中定义两个子路由:

Vue.use(VueRouter);
const Parent = {
  components: {
    Child1: () => import('./components/Child1.vue'),
    Child2: () => import('./components/Child2.vue'),
  },
};

3、接下来,我们需要定义路由规则,在这个例子中,我们将为Child1Child2分别设置不同的路径,我们可以将Child1的路径设置为/child1,将Child2的路径设置为/child2:

const routes = [
  { path: '/child1', component: Parent.Child1 },
  { path: '/child2', component: Parent.Child2 },
];

4、我们需要创建一个VueRouter实例,并将路由规则传递给它:

const router = new VueRouter({
  mode: 'history', // 使用HTML5的历史模式
  base: process.env.BASE_URL, // 设置基础URL,可以是绝对路径或相对路径
  routes, // 将路由规则传递给VueRouter实例
});

5、将VueRouter实例挂载到父组件中:

vue设置子路由

export default Parent;

子路由的使用与跳转

1、在父组件中使用子组件:

<template>
  <div>
    <h2>Child1</h2>
    <Child1 />
    <h2>Child2</h2>
    <Child2 />
  </div>
</template>

2、在子组件中使用<router-view>标签来显示当前路由对应的组件内容:

<template>
  <div>这是子组件的内容</div>
</template>

3、实现子路由的跳转:

通过编程式导航实现跳转:通过改变当前激活的路由来实现跳转,我们可以在某个方法中调用this.$router.push()来实现跳转:

vue设置子路由

methods: {
  goToChild1() {
    this.$router.push('/child1');
  },
},

通过声明式导航实现跳转:通过修改当前激活的路由来实现跳转,我们可以在模板中使用<router-link>标签来实现跳转:

<router-link to="/child1">跳转到子路由1</router-link> | <router-link to="/child2">跳转到子路由2</router-link> | <router-link to="/">返回首页</router-link> | <router-link to="/child1" tag="button">直接跳转到子路由1</router-link> | <router-link to="/child2" tag="button">直接跳转到子路由2</router-link> | <router-link to="/" tag="button">直接返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过编程式导航跳转到子路由1</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过编程式导航跳转到子路由2</router-link> | <router-link to="/" tag="button" @click="goToHome">通过编程式导航返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航跳转到子路由1</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航跳转到子路由2</router-link> | <router-link to="/" tag="button" @click="goToHome">通过声明式导航返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航直接跳转到子路由1</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航直接跳转到子路由2</router-link> | <router-link to="/" tag="button" @click="goToHome">通过声明式导航直接返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航触发事件跳转到子路由1</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航触发事件跳转到子路由2</router-link> | <router-link to="/" tag="button" @click="goToHome">通过声明式导航触发事件返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航触发事件直接跳转到子路由1</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航触发事件直接跳转到子路由2</router-link> | <router-link to="/" tag="button" @click="goToHome">通过声明式导航触发事件直接返回首页</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航触发事件直接跳转到子路由1并关闭当前页面</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航触发事件直接跳转到子路由2并关闭当前页面</router-link> | <router-link to="/" tag="button" @click="goToHome">通过声明式导航触发事件直接返回首页并关闭当前页面</router-link> | <router-link to="/child1" tag="button" @click="goToChild1">通过声明式导航触发事件直接跳转到子路由1并关闭所有页面</router-link> | <router-link to="/child2" tag="button" @click="goToChild2">通过声明式导航触发事件直接跳转到子路由2并关闭所有页面</router-开关 >

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/190621.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2024-01-02 05:46
Next 2024-01-02 05:48

相关推荐

  • vue取消监听watch

    在Vue.js中,我们可以通过使用$off方法来取消事件监听,这个方法是Vue.js事件系统的一部分,它允许我们在组件的生命周期内动态地添加和删除事件监听器。1. Vue事件监听的基本概念在Vue.js中,我们可以使用v-on指令或者$emit方法来触发事件,我们可以在一个按钮上绑定一个点击事件,当用户点击这个按钮时,就会触发这个事件……

    2024-01-05
    0167
  • 查看BGP对等体

    BGP对等体是网络中的一种重要概念,它是指在BGP路由协议中,与本地路由器直接相连的另一台路由器,BGP对等体可以是同一组织的内部路由器,也可以是不同组织的外部路由器,本文将详细介绍BGP对等体的相关知识,并回答一些与本文相关的问题。一、BGP对等体的概念BGP(Border Gateway Protocol,边界网关协议)是一种自治……

    2023-12-10
    0162
  • 华为ar121s路由器怎么进去设置

    由于回答长度限制,我无法在此处一次性提供1082个字的优质回答,但我可以为您提供一个详细的教程,以帮助您设置华为AR121S路由器,以下是教程的大纲:1、准备工具和材料2、连接路由器3、配置路由器基本信息4、配置无线网络5、配置端口映射和防火墙6、配置远程管理7、常见问题与解答接下来,我将为您提供每个部分的详细说明。1、准备工具和材料……

    2023-12-19
    0383
  • 服务器ip地址在哪里看

    在网络世界中,服务器IP地址是一个非常重要的概念,它是服务器在互联网上的唯一标识,用于定位和访问服务器上的资源,如何查看服务器的IP地址呢?本文将为您详细介绍几种查看服务器IP地址的方法。1、通过命令行查看在Windows系统中,我们可以通过命令提示符(CMD)来查看服务器的IP地址,请按照以下步骤操作:步骤1:按下键盘上的“Win ……

    2024-01-23
    0477
  • 苹果X为什么WF总是关闭状态

    苹果X为什么WF总是关闭状态随着科技的发展,越来越多的用户开始使用无线网络(WiFi)进行日常的工作和生活,有些用户在使用苹果X时发现,WiFi总是处于关闭状态,这给他们带来了很大的不便,本文将详细介绍苹果X WiFi关闭的原因及解决方法。原因分析1、系统问题苹果X的系统可能会出现一些bug,导致WiFi功能无法正常使用,这种情况下,……

    2024-03-22
    0161
  • BGP服务器能解决哪些问题

    BGP服务器能解决路由选择、负载均衡、网络冗余等问题,提高网络稳定性和可用性。

    2024-05-21
    0109

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入