组件其实就是自定义的标签。
一、全局化注册组件
组件中第一个参数是组件名,第二个参数是一个对象,里面可以放模板等内容
二、局部注册组件
局部的就是在构造器里面定义,在构造器里面可以定义多个组件,所以components必须加s,仍是以对象的形式。但是里面内容必须以字符串的形式加双引号。
注意:自定义指令和自定义组件的区别
自定义指令定义的是标签指令,而自定义组件定义的是标签,且自定义组件可以在里面添加属性。
三、自定义组件的props属性设置
props选项就是设置和获取标签上的属性值,可以在自定义的组件里面添加自家想要的属性,然后通过props选项来获取。
<body>
<div id="app">
<panda v-bind:here="message"></panda>
</div>
</body>
<script>
var vm=new Vue({
el:"#app",
data:{
message:'China'
},
components:{
"panda":{
template:`<p style="color:red;">Panda from {{ here }}</p>`,
props:['here']
}
}
})
</script>
以上代码获取属性值的同时还通过v-bind指令来向组件中传值。