码迷,mamicode.com
首页 > 其他好文 > 详细

Vue实现路由跳转和嵌套

时间:2018-07-02 00:13:46      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:use   children   IV   跳转   实例   ons   from   多层   app   

在实际项目中我们会碰到多层嵌套的组件组合而成,但是我们如何实现嵌套路由呢?因此我们需要在 VueRouter 的参数中使用 children 配置,这样就可以很好的实现路由嵌套。

index.html,只有一个路由出口

[html] view plain copy
<div id="app">
<!-- router-view 路由出口, 路由匹配到的组件将渲染在这里 -->
<router-view></router-view>
</div>

main.js,路由的重定向,就会在页面一加载的时候,就会将home组件显示出来,因为重定向指向了home组件,redirect的指向与path的必须一致。children里面是子路由,当然子路由里面还可以继续嵌套子路由。
[html] view plain copy
import Vue from ‘vue‘
import VueRouter from ‘vue-router‘
Vue.use(VueRouter)

//引入两个组件
import home from "./home.vue"
import game from "./game.vue"
//定义路由
const routes = [
{ path: "/", redirect: "/home" },//重定向,指向了home组件
{
path: "/home", component: home,
children: [
{ path: "/home/game", component: game }
]
}
]
//创建路由实例
const router = new VueRouter({routes})

new Vue({
el: ‘#app‘,
data: {
},
methods: {
},
router
})
home.vue,点击显示就会将子路由显示在出来,子路由的出口必须在父路由里面,否则子路由无法显示。
[html] view plain copy
<template>
<div>
<h3>首页</h3>
<router-link to="/home/game">
<button>显示<tton>
</router-link>
<router-view></router-view>
</div>
</template>
game.vue
[html] view plain copy
<template>
<h3>游戏</h3>
</template>

运行后的结果:

点击显示后:

Vue实现路由跳转和嵌套

标签:use   children   IV   跳转   实例   ons   from   多层   app   

原文地址:https://www.cnblogs.com/aivnfjgj/p/9251774.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!