路由布局
路由布局是本章最后一个知识点,经过第1~6章的学习,相信大家已经入门 Vue。简单地说,路由布局就是使用一个路由匹配规则,在页面中同时显示多个组件。
代码流程如下。
-
创建 3 个组件。
-
创建路由匹配规则。
-
视图层显示组件,具体代码如下。
视图层代码如下。
<div id="app" v-cloak>
<router-view></router-view>
<router-view name="main"></router-view>
<router-view name="footer"></router-view>
</div>
逻辑代码如下。
<script>
var header = {
template: '<div><h1>头部</h1></div>'
}
var main = {
template: '<div><h1>主体</h1></div>'
}
var footer = {
template: '<div><h1>底部</h1></div>'
}
var router = new VueRouter({
routes: [{
path: '/',
components: {
'default': header,
'main': main,
'footer': footer
}
}]
})
var vm = new Vue({
el: '#app',
data: {},
methods: {},
components: {},
router: router
})
</script>
代码解析如下。
这里重点讲解路由匹配规则,当访问根路径需要同时显示 3 个组件时,把原先的属性 component 换成了 components。
components 属性的作用是给组件起名字,视图层中要显示几个组件就写几个 router-view 标签,使用 name 属性指定 router-view 具体显示的内容,其值就是 components 中自定义的组件名。