Vue中router使用命名视图实现经典布局

29 篇文章 2 订阅
26 篇文章 0 订阅
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>router经典布局</title>
		<script src="lib/vue.min.js"></script>
		<script src="lib/vue-router.js"></script>
		<style>
			body{
				margin: 0;
				padding: 0;
			}
			h3{
				margin: 0;
				padding: 0;
			}
			
			.headers{
				width: 100%;
				height: 80px;
				background: orange;
			}
			.container{
				display: flex;
				height: 600px;
			}
			.left{
				background: hotpink;
				flex: 2;
			}
			.main{
				background: #5BC0DE;
				flex: 8;
			}
		</style>
	</head>
	<body>
		<div id="app">
			<!-- 设置到页面中 -->
			<router-view></router-view>
			<div class="container">
				<router-view name="left"></router-view>
				<router-view name="main"></router-view>
			</div>
		</div>
		<!-- 子组件模板 -->
		<template id="headers">
			<h3 class="headers">头部标题</h3>
		</template>
		<template id="left">
			<h3 class="left">左边内容</h3>
		</template>
		<template id="main">
			<h3 class="main">主题内容</h3>
		</template>

		<script>
			// 定义模板,要在路由之前!
			var headers = {
				template: '#headers'
			}
			var leftBox = {
				template: '#left'
			}
			var mainBox = {
				template: '#main'
			}
			
			// 创建router
			var router = new VueRouter({
				routes:[
					{
						path:'/',components:{
							// 设置组件模板
							'default':headers,
							'left':leftBox,
							'main':mainBox
						}
					}
				]
			})
			// 实例
			var app = new Vue({
				el: '#app',
				data: {

				},
				methods: {

				},
				// 挂载路由
				router
			})
		</script>
	</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值