温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

vue router-view的嵌套显示实现方法

发布时间:2021-07-30 18:13:46 来源:亿速云 阅读:793 作者:chen 栏目:开发技术

本篇内容介绍了“vue router-view的嵌套显示实现方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

目录
  • 一、路由配置

  • 二、vue页面嵌套

  • 三、嵌套联系

一、路由配置

const routes = [
  {
    path: '/',
    name: '导航1',
    component: Home,
    children:[
      {
        path: '/customer',
        name: 'Customer',
        // route level code-splitting
        // this generates a separate chunk (about.[hash].js) for this route
        // which is lazy-loaded when the route is visited.
        component: () => import(/* webpackChunkName: "about" */ '../views/Customer.vue')
      },
      {
        path: '/pageOne',
        name: '页面1',
        component: PageOne,

      },
      {
        path: '/pageTwo',
        name: '页面2',
        component: PageTwo,
    },
    ]
  },
  {
    path: '/navigation',
    name: '导航2',
    component: Home,
    children:[
      {
        path: '/pageThree',
        name: '页面3',
        component: PageThree,

      },
      {
        path: '/pageFour',
        name: '页面4',
        component: PageFour
      },
    ]
  },

二、vue页面嵌套

App.vue先配置第一个router-view

// An highlighted block
 <router-view></router-view>

Home.vue配置第二个router-view

// An highlighted block
<template>
  <div>
  <el-container >
    <el-aside width="200px" >

      <el-menu>
        <el-submenu v-for="(item,index) in $router.options.routes" :index="index+''">
        <template slot="title"><i class="el-icon-sell"></i>{{item.name}}</template>
          <el-menu-item v-for="(item2,index2) in item.children" :index="index+'-'+index2">{{item2.name}}</el-menu-item>
        </el-submenu>
      </el-menu>
    </el-aside>

    <el-container>
      <el-header >
        <el-dropdown>
          <i class="el-icon-setting" ></i>
          <el-dropdown-menu slot="dropdown">
            <el-dropdown-item>查看</el-dropdown-item>
            <el-dropdown-item>新增</el-dropdown-item>
            <el-dropdown-item>删除</el-dropdown-item>
          </el-dropdown-menu>
        </el-dropdown>
        <span>王小虎</span>
      </el-header>

      <el-main>
        <router-view></router-view>

      </el-main>
    </el-container>

  </el-container>

</div>
</template>

<style>
.el-header {
  background-color: #B3C0D1;
  color: #333;
  line-height: 60px;
}

.el-aside {
  color: #333;
}
</style>

<script>
export default {

};
</script>

三、嵌套联系

首先,在访问http://localhost:8181/时会进入第一层嵌套,此时进入第一个router-view:Home.vue。然后当访问pageone时,会连带Home.vue继续访问。

因为router-view的嵌套显示和路由路基的嵌套有关,可以看到,在路由里面,导航一的路径底下分别是页面一以及页面二的路由路径。所以当访问页面一pageone时,会先访问上级路径Home.vue页面。加入Home.vue页面没有放置router-view,那么下级页面将无法显示

“vue router-view的嵌套显示实现方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI