默认插槽
<button>
<slot></slot>
</button>
<childer-button>提交</childer-button>
具名插槽
<header>
<slot name="header"></slot>
</header>
<childer-header>
<template v-slot:header>
插槽的内容放在这里
</template>
<template #header>
v-slot 对应简写 #
</template>
</childer-header>
动态插槽名
<base-layout>
<template v-slot:[dynamicSlotName]>
...
</template>
<template #[dynamicSlotName]>
...
</template>
</base-layout>
作用域插槽
##子组件将一部分数据在渲染时提供给插槽, 向一个插槽的插口上传递 attribute:
<div>
<slot text="madongmei" :count="1"></slot>
</div>
<childer-component v-slot="slotProps">
{{ slotProps.text }} {{ slotProps.count }}
</childer-component>
具名作用域插槽
let obj = {
name: 'madongmei',
age: 18
}
<div>
<slot name="item" v-bind="obj"></slot>
</div>
<childer-component>
<template #item="{ name, age }">
<p>{{ name }}</p>
<p>{{ age }}</p>
</template>
</childer-component>