- 组件相关语法
- 基本概念:组件的基本给概念:就是把一个大的功能,拆分成一个个子组件。组件是页面中的一部分。
- 全局组件 特点:全局组件只要定义,处处可以使用,性能不高,但是使用起来简单。 组件具备复用性,在一个页面里,可以使用多次。 定义方法:Vue.component('组件名',组件)
- 局部组件 局部组件的使用需要进行注册:例如在父组件里:components:{xxx:xxx} PS:为了和普通变量区分,建议组件首字母进行大写。
- 组件传值父传子 父组件中-属性传值 子组件中-props接收 校验 校验方法:props: { content: { type: String }}
- 校验字符串
-
可校验类型 String Number Boolean Array Object Date Function -
非空校验 required:true -
默认值 default: xxx validator方法校验 validator: function(value){ return value<1000 } 参数必须小于1000 - 组件传值子传父
-
单向数据流 子组件可以使用父组件传递过来的数据,但是绝对不能修改传递过来的数据。 this.$emit('事件','参数')方法 子组件向父组件传递方法,从而改变父组件里的变量 <div @自定义事件="handleXxx" >xxx</div>
- slot插槽
-
概念:子组件使用 <slot></slot> 接收父组件传过来的HTML结构。 -
基础语法: 父组件 <myComp><div></div></myComp> 子组件 <slot></slot> 默认值 <slot>default value</slot> -
具名插槽 概念:一个组件里,可以设置多个插槽,然后在父组件里可以写多个<template>来填充这些插槽 基础语法 父组件 基础写法:<template v-slot:header> 简单写法:<template #header> 子组件 <slot name="header"> -
作用域插槽 作用域插槽相当于插槽届的数据子传父,父组件决定子组件输出方式。 - 动态组件 概念:根据数据的编号,结合compoent 这个标签,来随时动态切换组件的显示 基础语法: 保持状态: 经常和动态组件一起使用