<!-- 父组件 -->
<template>
<BaseComponent>
<template v-slot:default>
这是默认插槽的内容
</template>
</BaseComponent>
</template>
<!-- 子组件 BaseComponent -->
<template>
<div>
<slot></slot> <!-- 默认插槽 -->
</div>
</template>
#
以及 default
<!-- 子组件 -->
<template>
<div>
<!-- 这是一个默认插槽 -->
<slot></slot>
</div>
</template>
<!-- 父组件使用方式 -->
<template>
<ChildComponent>
<!-- 方式1:直接使用 -->
这是默认插槽的内容
<!-- 方式2:使用具名default -->
<template v-slot:default>
这也是默认插槽的内容
</template>
<!-- 方式3:简写方式 -->
<template #default>
这还是默认插槽的内容
</template>
</ChildComponent>
</template>
请注意,以上三种书写形式表达式同一种含义。起到的作用都是从父组件把数据传向子组件。
子组件
<:element="item" :index="index">
:element="item"
<!-- 子组件 -->
<template>
<div>
<!-- 默认作用域插槽 -->
<slot :data="data"></slot>
<!-- 具名作用域插槽 -->
<slot name="header" :title="title"></slot>
</div>
</template>
<!-- 父组件使用方式 -->
<template>
<ChildComponent>
<!-- 默认作用域插槽 -->
<template v-slot:default="slotProps">
{{ slotProps.data }}
</template>
<!-- 具名作用域插槽 -->
<template v-slot:header="headerProps">
{{ headerProps.title }}
</template>
</ChildComponent>
</template>
因篇幅问题不能全部显示,请点此查看更多更全内容