Vue三层嵌套路由的示例代码

网友投稿 271 2023-02-06


Vue三层嵌套路由的示例代码

vue嵌套路由:

实现效果(路由三层嵌套,点击一级tab显示二级tab效果,二级tab点击切换对应内容,不在tab区域里的内容,切换时不重复渲染):

Demo访问时路径:http://IP:端口/#/routers/

1.建立案例文件夹 page/routers/

1 routers/index.vue

首页

新闻

娱乐

1-1-1 routers/home/index.vue

HOME页面信息:

最新HOME

国际HOME

国内HOME

1-1-2 routers/home/tab/gj.vue、gn.vue、zx.vue

gj.vue:

国际HOME信息:

gn.vue :

国内HOME信息:

zx.vue:

最新HOME信息:

1-2 routers/news/index.vue

新闻页面信息:

最新新闻

国际新闻

国内新闻

1-2-1 routers/news/tab/gj.vue、gn.vue、zx.vue

gj.vue:

国际新闻信息:

gn.vue:

国内新闻信息:

zx.vue:

最新新闻信息:

&lKpYqMnJt;/ul>

1-3-1 routers/yl/index.vue

娱乐页面信息:

最新娱乐

明星娱乐

焦点娱乐

1-3-2 routers/yl/tab/jd.vue、mx.vue、zx.vue

jd.vue:

焦点娱乐信息:

mx.vue:

明星娱乐信息:

zx.vue:

最新娱乐信息:

2.路由配置规则(router/index.js)

....

省略导入路由、使用路由代码...

....

// 嵌套路由的使用:第一层

import Rindex from '../page/routers/index'

// 嵌套路由的使用:第二层

import Rhome from '../page/routers/home/index'

// 嵌套路由的使用:第三层

import Rhomezx from '../page/routers/home/tab/zx'

import Rhomegj from '../page/routers/home/tab/gj'

import Rhomegn from '../page/routers/home/tab/gn'

import Rnews from '../page/routers/news/index'

import Rnewszx from '../page/routers/news/tab/zx'

import Rnewsgj from '../page/routers/news/tab/gj'

import Rnewsgn from '../page/routers/news/tab/gn'

import Ryl from '../page/routers/yl/index'

import Rylzx from '../page/routers/yl/tab/zx'

import Rylmx from '../page/routers/yl/tab/mx'

import Ryljd from '../page/routers/yl/tab/jd'

// 路由规则配置:

export default new Router({

routes : [

{

name: 'rindex',

path: '/routers',

component: Rindex,

redirect: {name: 'rindex_rhome'}, // 跳转到下一级第一个

children: [

{

name: 'rindex_rhome',

path: 'rindex_rhome', //如果这里不使用 "/rhome" 则表示是归属于上级路由(上级luyou/子path),如果使用 "/rhome" 则表示根路径下访问

component: Rhome,

redirect: {name: 'rindex_rhome_Rhomezx'}, //跳转到下级第一层

children: [

{

name: 'rindex_rhome_Rhomezx',

path: 'rindex_rhome_Rhomezx',

component: Rhomezx

},

{

name: 'rindex_rhome_Rhomegj',

path: 'rindex_rhome_Rhomegj',

component: Rhomegj

},

{

name: 'rindex_rhome_Rhomegn',

path: 'rindex_rhome_Rhomegn',

component: Rhomegn

}

]

},

{

name: 'rindex_rnews',

path: 'rindex_rnews',

component: Rnews,

redirect: {name: 'rindex_rnews_Rnewszx'},

children: [

{

name: 'rindex_rnews_Rnewszx',

path: 'rindex_rnews_Rnewszx',

component: Rnewszx

},

{

name: 'rindex_rnews_Rnewsgj',

path: 'rindex_rnews_Rnewsgj',

component: Rnewsgj

},

{

name: 'rindex_rnews_Rnewsgn',

path: 'rindex_rnews_Rnewsgn',

component: Rnewsgn

}

]

},

{

name: 'rindex_ryl',

path: 'rindex_ryl',

component: Ryl,

redirect: {name: 'rindex_ryl_rylzx'},

chidren:[

{

name: 'rindex_ryl_rylzx',

path: 'rindex_ryl_rylzx',

component: Rylzx

},

{

name: 'rindex_ryl_rylmx',

path: 'rindex_ryl_rylmx',

component: Rylmx

},

{

name: 'rindex_ryl_ryljd',

path: 'rindex_ryl_ryljd',

component: Ryljd

}

]

}

]

}

]

});


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring 框架中注入或替换方法实现
下一篇:关于HTML5的data
相关文章

 发表评论

暂时没有评论,来抢沙发吧~