对props的变量值,进行校验
props:{
变量名:{
type--约束值的类型,Array,Objact,
default--设置默认值,true
required:true -- 设置为必须值
validator(value) {
if (value.length >= 2 && value.length <= 5) {
return true
} else {
console.error('数据源必须在2-5项');
return false
}
}
}
}
动态组件
在同一个挂载点, 可以切换显示不同组件,vue内置的component组件, 配合is属性,改变is属性的值, 为要显示的组件名即可。
组件缓存
vue内置的keep-alive组件把要缓存的组件包起来,不会频繁的创建和销毁组件, 页面更快呈现
组件缓存\_激活的钩子函数
activated – 获得激活状态
deactivated – 失去激活状态
组件插槽
当组件内某一部分标签不确定时,用插槽技术
先在组件内用slot占位,使用组件时, 传入具体标签插入。传入的标签会替换掉slot显示
具名插槽
slot占位, 给name属性起名字来区分
template配合v-slot:name分发要替换的标签
作用域插槽
使用组件插槽技术时, 需要用到子组件内变量
子组件在slot身上添加属性和子组件的值
使用组件处template配合v-slot=“变量名”(收集slot身上的所有属性和值)