- 组件:为了拆分Vue的代码量,以不同的组件来划分功能模块,将来我们需要什么样的功能就去调用什么样的组件
- 组件化:是从 UI界面进行划分的,方便组件重用
- 模块化:是从代码逻辑进行划分的
- 注意:组件的模板即template中的标签必须只有一个根元素
- 组件定义的三种方式:
- 使用const com=Vue.extend({template:指定组件展示的HTML结构})创建组件模板对象,Vue.componet(组件名字,组件末班对象)
- Vue.component(组件名,{template:'定义的HTML结构'})
- Vue.component(组件名,{template:'#idname'})完后再dom文档中使用<template id ='idname'></template>标签中写组件
- vue对象内components:{组件名:{template:}}
- 组件的数据data:function(){return object}//组件的数据必须是一个函数,且这个函数必须返回一个对象
- 父组件向子组件传值:通过在子组件上自定义绑定的属性来获取父组件的信息,并且在子组件定义组件的时候添加一个props属性该属性为数组,里面存放点是子组件自定义的绑定属性。两部操作都是在子组件上面操作的呢。props中的数是父组件传过来的。props中的数据只可读
- 父组件向子组件传方法:方法只可以事件绑定传递v-on:自定义事件属性=方法名,完后子组件中通过this.$emit('父组件方法名',定向方法的参数)来调用父组件方法,可以通过这中传参的方法将子组建的数据当做参数传递给父组件,
- 组件通信:https://blog.csdn.net/lhb215215/article/details/82966300