vue 路由嵌套_vue多级路由嵌套

vue 路由嵌套_vue多级路由嵌套嵌套路由有时候在路由中,主要的部分是相同的,但是下面可能是不同的。比如访问首页,里面有新闻类的/home/news,还有信息类的/home/message。这时候就需要使用到嵌套路由。项目结构如下:

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

嵌套路由

有时候在路由中,主要的部分是相同的,但是下面可能是不同的。比如访问首页,里面有新闻类的/home/news,还有信息类的/home/message。这时候就需要使用到嵌套路由。项目结构如下:
vue 路由嵌套_vue多级路由嵌套
我们创建了3个组件,分别是Home.vueHomeNews.vueHomeMessage.vue,代码如下:

Home.vue

<template>
  <div class="home">
    <h1>Home</h1>
    <router-link to="/home/news">新闻类</router-link>  // 注意这里一定要写完整路径不能只写/news,需要加上/home
    <router-link to="/home/message">信息类</router-link>
    <router-view></router-view>
  </div>
</template>

<script>

export default {
  name: "Home",
};
</script>

<style scoped>

</style>

HomeNews

<template>
  <div class="homeNews">
    <ul>
      <li>新闻1</li>
      <li>新闻2</li>
      <li>新闻3</li>
      <li>新闻4</li>
    </ul>
  </div>
</template>

<script>
export default {
  name: "HomeNews"
}
</script>

<style scoped>

</style>

HomeMessage

<template>
  <div class="homeMessage">
    <ul>
      <li>消息1</li>
      <li>消息2</li>
      <li>消息3</li>
      <li>消息4</li>
    </ul>
  </div>
</template>

<script>
export default {
  name: "HomeMessage"
}
</script>

<style scoped>

</style>

组件写完以后,我们在router文件夹下的index.js文件中配置路由

import Vue from "vue";
import VueRouter from "vue-router";

Vue.use(VueRouter);

// 这里还是使用路由懒加载
const Home = () => import('../views/Home')
const HomeNews = () => import('../views/HomeNews')
const HomeMessage = () => import('../views/HomeMessage')

const routes = [
  {
    path: "/home",
    name: "Home",
    component: Home,
    // 子路由的写法
    children: [
      {
        path: "news",
        name: "HomeNews",
        component: HomeNews
      },
      {
        path: "message",
        name: "HomeMessage",
        component: HomeMessage
      },
    ]
  },
  {
    path: "",
    redirect: "home"
  }
];

const router = new VueRouter({
  routes,
  mode: 'history',
});

export default router;

嵌套路由的写法很简单,你会发现,children 配置就是像 routes 配置一样的路由配置数组,所以呢,你可以嵌套多层路由。

此时,基于上面的配置,当你访问 /home/时,home 的出口是不会渲染任何东西。
vue 路由嵌套_vue多级路由嵌套

这是因为没有匹配到合适的子路由。如果你想要渲染点什么,可以提供一个 空的 子路由:

const routes = [
  {
    path: "/home",
    name: "Home",
    component: Home,
    children: [
      {
        path: "news",
        name: "HomeNews",
        component: HomeNews
      },
      {
        path: "message",
        name: "HomeMessage",
        component: HomeMessage
      },
      // 新增空的子路由
      {
        path: "",
        redirect: "news"
      }
    ]
  },

  {
    path: "",
    redirect: "home"
  }
];

这样页面就默认会重定向到news页面,会展示news的信息
vue 路由嵌套_vue多级路由嵌套

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/164838.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 《Dubbo进阶一》——RPC协议底层原理

    《Dubbo进阶一》——RPC协议底层原理一RPC协议简介在一个典型的RPC的使用场景中,包含了服务发现、负载、容错、序列化和网络传输等组件,其中RPC协议指明了程序如何进行序列化和网络传输,也就是说一个RPC协议的实现等于一个非透明的RPC调用。简单来说,分布式框架的核心是RPC框架,RPC框架的核心是RPC协议。二协议的基本组成IP:服务提供者的地址端口:协议指定开放端口运行服务(1)netty(2)mima…

    2022年5月19日
    40
  • 『数据可视化』基于Python的数据可视化工具「建议收藏」

    『数据可视化』基于Python的数据可视化工具「建议收藏」如何做Python的数据可视化?pyecharts是一个用于生成Echarts图表的类库。Echarts是百度开源的一个数据可视化JS库。主要用于数据可视化。一、安装pyecharts兼容Python2和Python3。目前版本为0.1.4pipinstallpyecharts二、入门首先开始来绘制你的第一个图表

    2022年6月22日
    37
  • Oracle没有WM_CONCAT函数的解决办法

    Oracle没有WM_CONCAT函数的解决办法解决ORA-00904:”WMSYS”.”WM_CONCAT”WM_CONCAT是oracle的非公开函数,并不鼓励使用,新版本oracle并没有带此函数,需要手工加上。1、下载根据下方链接下载三个文件:owmctab.plb、owmaggrs.plb、owmaggrb.plbhttps://download.csdn.net/download/qq_39997939/741429102、执行用sqlplus登录,执行下载的脚本sqlplus/assysdba

    2022年6月14日
    92
  • oracle锁表处理三步骤

    oracle锁表处理三步骤selectsession_idfromv$locked_object; –425SELECTsid,serial#,username,osuserFROMv$sessionwheresid=425;ALTERSYSTEMKILLSESSION’425,9613′;

    2022年6月16日
    34
  • BM3D算法「建议收藏」

    BM3D算法「建议收藏」BM3D(Block-matchingand3Dfiltering,3维块匹配滤波)2007-TIP-Imagedenoisingbysparse3Dtransform-domaincollaborativelteringNL-means(空间域处理)非局部均值算法p像素的值的大小就应该为q1q2q3每个与p对应房间(像素)值的加权平均,这样就对P图像斑块完成了降噪的过程,类似一个基于大斑块的高斯滤波算法。BM3D把空间域和变换域的降噪方法结合起来BM3D该..

    2022年6月7日
    51
  • BackTrack3(BT3激活成功教程wifi密码)

    BackTrack3(BT3激活成功教程wifi密码)BackTrack3(BT3激活成功教程)  准备工作  1、一个有可激活成功教程无线信号的环境。如我在家随便搜索出来的信号。  2、带无线网卡的电脑一台(笔记本台式机均可,只要无线网卡兼容BT3),我用的是三星NC10的上网本。  3、4G以上优盘一个(我用的是kingston8G的)  4、下载BT3,约900多兆。注:BT3全称BackTrack3,与我们常说的bt下载是完全不同的…

    2022年10月1日
    3

发表回复

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

关注全栈程序员社区公众号