vue 路由嵌套_vuejs直接打开第三级路由

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

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

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

嵌套路由

有时候在路由中,主要的部分是相同的,但是下面可能是不同的。比如访问首页,里面有新闻类的/home/news,还有信息类的/home/message。这时候就需要使用到嵌套路由。项目结构如下:
vue 路由嵌套_vuejs直接打开第三级路由
我们创建了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 路由嵌套_vuejs直接打开第三级路由

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

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 路由嵌套_vuejs直接打开第三级路由

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

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

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


相关推荐

  • 一场影响美国大选的战争利器:邮件安全+协作即时

    一场影响美国大选的战争利器:邮件安全+协作即时

    2022年3月4日
    27
  • cmd cd 无法切换目录_cd切换盘符

    cmd cd 无法切换目录_cd切换盘符在windows下,打开cmd.exe,默认进入到当前用户主目录下,发现除了C:\盘,可以通过cd..,cd,dir去到C:\盘的各个目录外,不能通过cdd:进入到其他盘可以在c盘各个目录自由切换不能通过cdd:进入到其他盘,仍停留在原来的位置有两种方式可以解决这个问题:cd/dd:在cd和盘符之间加上/de:

    2022年10月3日
    0
  • mysql数据库主从复制原理_数据库主从一致性验证

    mysql数据库主从复制原理_数据库主从一致性验证文章目录前言一、MySQL主从复制1.支持的复制类型2.主从复制的工作过程是基于日志3.请求方式4.主从复制的原理5.MySQL集群和主从复制分别适合在什么场景下使用6.为什么使用主从复制、读写分离7.用途及条件8.mysql主从复制存在的问题9.MySQL主从复制延迟二、主从复制的形式三、读写分离1.原理2.为什么要读写分离呢?3.什么时候要读写分离?4.主从复制与读写分离5.目前较为常见的MySQL读写分离分为以下两种①基于程序代码内部实现②基于中间代理层实现四、案例实施1.案例环境2.实验思路(解决需

    2022年8月13日
    2
  • 离线centos6下安装Ambari2.2.1和HDP2.4

    离线centos6下安装Ambari2.2.1和HDP2.4

    2021年9月14日
    46
  • 高并发抢购思路

    高并发抢购思路电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因?一、大规模并发带来的挑战在过去的工作中,我曾经面对过5w每秒的高并发秒杀功能,在这个过程中,整…

    2022年5月6日
    43
  • conda安装Pytorch下载过慢解决办法(11月26日更新ubuntu下pytorch1.3安装方法)

    conda安装Pytorch下载过慢解决办法(11月26日更新ubuntu下pytorch1.3安装方法)目录添加清华源安装PyTorch3月5日更新ubuntu下pytorch1.0.1安装方法(Ubuntu16.04+CUDA9.0+PyTorch1.0.1)7月23日更新ubuntu下pytorch1.1安装方法(通过pip)11月26日更新ubuntu下pytorch1.3安装(通过conda)pytorch最近已经更新到了稳定版本的1.0.1,从Pytorch官网上可…

    2022年6月24日
    58

发表回复

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

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