Vue之组件初识(021)

Vue之组件初识

组件系统是 Vue 的另一个重要概念,因为它是一种抽象,允许我们使用小型、独立和通常可复用的组件构建大型应用。几乎任意类型的应用界面都可以抽象为一个组件树:
在这里插入图片描述
二. 注册组件
.全局注册

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<script src="../js/vue.js"></script>
		<title>component</title>
	</head>
	<body>
		<!--调用-->
		<div id="app">
			<button-counter></button-counter>
		</div>
		<div id="app02">
			<button-counter></button-counter>
		</div>
		
		<script>
			// 定义一个名为 button-counter 的新组件
			Vue.component('button-counter', {
				data: function() {
					return {
						count: 0
					}
				},
				template: '<button v-on:click="count++">You clicked me {{ count }} times.</button>'
			})
			// 创建根实例
			new Vue({
				el: '#app'
			})
			new Vue({
				el: '#app02'
			})
		</script>
	</body>
</html>

效果如图:
在这里插入图片描述

总结:
1.因为组件是可复用的 Vue 实例,所以它们与 new Vue 接收相同的选项,例如 data、computed、watch、methods 以及生命周期钩子等。仅有的例外是像 el 这样根实例特有的选项。
2.data 必须是一个函数。

局部注册
完整代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<script src="../js/vue.js"></script>
		<title>component02</title>
	</head>
	<body>
		<!--调用-->
		<div id="app">
			<button-counter></button-counter>
		</div>
		<script>
				// 创建根实例
			new Vue({
				el: '#app',
				// 在实例里定义一个名为 button-counter 的新组件
				components:{
					'button-counter':{
						data: function() {
							return {
								count: 0
							}
						},
						template: '<button v-on:click="count++">You clicked me {{ count }} times.</button>'
					}
				}
			})
		</script>
	</body>
</html>

在这里插入图片描述

这样组件只能在这个实例中使用

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值