Vue Router 之 Nested Routes

栏目: JavaScript · 发布时间: 6年前

内容简介:在實務上,Route 可能會有很多層,若使用 Nested Routes,會使 Route 乾淨很多,也更容易維護。Vue 2.6.10Vue-router 3.0.3

在實務上,Route 可能會有很多層,若使用 Nested Routes,會使 Route 乾淨很多,也更容易維護。

Version

Vue 2.6.10

Vue-router 3.0.3

Vue CLI 3.8.4

Nested Routes

Vue Router 之 Nested Routes

About 下多了 About UsAbout You 兩個連結。

Vue Router 之 Nested Routes

按下 About Us 後,網址為 /about/us ,顯示 about-us component。

很明顯 About Us 是在 about 下的 us

Vue Router 之 Nested Routes

按下 About You 後,網址為 /about/you ,顯示 about-you component。

很明顯 About You 是在 about 下的 you

router.js

import Vue from 'vue';
import Router from 'vue-router';
import Home from './views/Home.vue';

Vue.use(Router);

export default new Router({
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    },
    {
      path: '/about',
      name: 'about',
      component: () => import(/* webpackChunkName: "about" */ './views/About.vue'),
      children: [
        {
          path: 'us',
          name: 'us',
          component: () => import(/* webpackChunkName: "about-us" */ './views/about-us.vue'),
        },
        {
          path: 'you',
          name: 'you',
          component: () => import(/* webpackChunkName: "about-you" */ './views/about-you.vue'),
        },
      ],
    }
  ]
})

18 行

children: [
  {
    path: 'us',
    name: 'us',
    component: () => import(/* webpackChunkName: "about-us" */ './views/about-us.vue'),
  },
  {
    path: 'you',
    name: 'you',
    component: () => import(/* webpackChunkName: "about-you" */ './views/about-you.vue'),
   },
],

/about path 加上 children property,為 array,裡面放的一樣是 route object。

19 行

{
  path: 'us',
  name: 'us',
  component: () => import(/* webpackChunkName: "about-us" */ './views/about-us.vue'),
}

children 下的 route object, path 不能加 / ,因為這代表 絕對路徑 ,而非 相對路徑

children 下的 path 要使用 相對路徑

Conclusion

  • 透過 children property,讓我們可以使用 route object 所組成的 array,實現 nested routes

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

人人都在说谎

人人都在说谎

赛思·斯蒂芬斯--达维多维茨 / 胡晓姣、张晨、左润男 / 中信出版集团 / 2018-11 / 58

有多少人买了书真正看完了? 你朋友的酒量有他说的那么大吗? 父母是否暗自喜欢男孩儿多于女孩儿? 电影里暴力镜头增多会导致犯罪率升高吗? 种族歧视在现如今的美国还严重吗? 特朗普的胜利有征兆吗,什么促成他赢得了大选? …… 你知道问题的答案吗,直觉会怎样告诉你? 作者赛思·斯蒂芬斯--达维多维茨是一位前谷歌数据科学家和专栏作家。他的研究发现,世界充满了......一起来看看 《人人都在说谎》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试