vue不用脚手架封装组件的方法

第一中:

	创建一个vue实例
		<div id="app">
		// mycom2 就是引入封装的公共组件			
		<mycom2></mycom2>
	</div>
	
	<!-- 定义再外面的 vue 模板组件而且是一个公共的组件 -->
	<template id="tmp1">
		<div>
			<h1>我是一个公共组件</h1>
		</div>
	</template>
	
		var app = new Vue({
			el: '#app',
			data: {},
			method: {},
		
		});
		//开始封装一个公共的组件
		Vue.component('mycom2', {
			template: '#tmp1'
		})

第二种封装一个私有的组件

	<!-- 这是一个私有的组件只能在 div id='SY'的里面才能被访问 -->
	<div id="SY">
		<div>
			<login></login>
		</div>
	</div>

		<template id="tmp12">
		<div>
			<h1>这是一个私有的组件只能在 div id='SY'的里面才能被访问</h1>
		</div>
		</template>	

	var SY = new Vue({
			el: '#SY',
			data: {},
			method: {},
			components: {
				// login 是组件名
				login:{
					template:'#tmp12'
				}
			}
		})

组件里封装 data 和方法
组件中的 data 有点不一样,实例中的 data 可以是一个对象 但是组件中的 data 必须是一个 方法 function 还必须在 function 方法中 return 返回一个对象

		<div id="app">
		//使用封装的组件
			<mycom1></mycom1>
		</div>
		
		//封装组件
			<template id="zujian">
				<div>
					<h1>{{msg}}</h1>
					<button type="button" @click="dianji">点我加1</button>
				</div>
			</template>
		var app = new Vue({
			el: "#app",
			data: {},
			methods: {}
		})

		//封装的组件
		Vue.component('mycom1', {
			template: '#zujian',
			data: function() {
				return {
					msg:'1'
				}
				
			},
			methods:{
				dianji(){
					this.msg ++
				}
			}
		})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值