zoukankan      html  css  js  c++  java
  • vue-路由嵌套

      路由嵌套说白点,就相当于父子路由,但一定要记得一点的是:父子路由是独立的,对应的有父子路由关系,那父子路由也会产生父子组件;父子组件也是独立的;

      话不多说,还是上代码吧:

    const routes = [
      {
        path: '/',
        name: 'portal',
        redirect: '/home'
      },
      {
        path: '/user', //父路由,再次强调,父子路由都是独立的个体
        name: 'User',
        component: User,
        children: [ //子路由
          {
            path: '', // 如果要默认一个子路由,这里别写 '/'
            redirect: '/user/c1'
          },
          {
            path: 'c1', //这里不能写 /c1 ,这种写法是错误的
            component: UserChild1
          },
          {
            path: 'c2',
            component: UserChild2
          }
        ]
      }
    ]

      没错,父子路由的嵌套关系弄好了,但是如果是这样的,子路由是不会显示出来的;这么说把,<router-view>标签在一个vue组件只能用一次,也就是只能展示一个动态的组件,目前只能展示父路由对应的组件,子路由对应的组件是展示不出来的,如果也想子路由对应的组件展示出来。

      那就必须到父路由对应的组件中 设置 router-view 来动态展示子组件,如下:

      App.vue:

    <template>
      <div id="nav">
        <router-link to="/home">Home</router-link> |
        <router-link to="/about">About</router-link> |
        <router-link :to="'/user'">User</router-link>
      </div>
      <router-view/>
    </template>

      User.vue:

    <template>
      <div>
        <h1>我是User</h1>
        <router-link to="/user/c1">大儿子</router-link>
        <router-link to="/user/c2">二儿子</router-link>
        <router-view></router-view>
      </div>
    </template>

      所以来个总结吧:现在有点理解vue组件数的概念了,一个组件嵌套多个组件,而子组件中可以嵌套多个动态组件,就如下的图:

      固定组件,可以层层嵌套;

      动态组件,也可以层层嵌套;

  • 相关阅读:
    西交应用统计学(四)
    SPSS非参数检验
    并查集实现
    二叉树遍历非递归算法
    算法导论——渐近符号、递归及解法
    SPSS均值过程和T检验
    二维数组的查找及向函数传递二维数组问题
    printf()的格式
    C++ string类型的读写
    替换字符串中的空格
  • 原文地址:https://www.cnblogs.com/ibcdwx/p/14605931.html
Copyright © 2011-2022 走看看