Vue组件的三大核心概念:属性、事件和插槽

属性:分为自定义属性、原生属性、特殊属性;

        自定义属性props:即组件props中声明的属性,子类接受父类的值;

        原生属性attrs :没有声明的属性,默认自动挂载到组件根元素上,设置inheritAttrs为false可以关闭自动挂载;

Vue组件的三大核心概念:属性、事件和插槽_第1张图片

         特殊属性class、style:挂载到组件根元素上,支持字符串、对象、数组等多种语法;详见:https://cn.vuejs.org/v2/guide/class-and-style.html;

事件:分为普通事件和修饰符事件;

        普通事件: @click,@input,@change,@xxx等事件,通过this.$emit('xxx',...)触发;

        修饰符事件:@input.trim,@click.stop,@submit.prevent等,一般用于原生HTML元素,自定义组件需要自行开发支持;

        阻止默认事件:@click.stop可以阻止点击事件;

        补充:JS阻止冒泡和取消默认事件(默认行为);

                  防止冒泡和行为:w3c使用的是 e.stopPropagation(),IE则是e.cancelBubble= true;

                  取消默认事件:w3c使用的是 e.preventDefault(),IE则是e.returnValue = false;

插槽:分为普通插槽和作用于插槽

         普通插槽:        

         作用插槽:    

 

 

你可能感兴趣的:(Vue)