vue 渲染函数处理slot_解决vue同一slot在组件中渲染多次的问题
时间: 2023-07-08 12:26:17 浏览: 154
如果同一组件中需要多次使用同一个 slot,可以通过给 slot 添加属性来进行区分。例如:
在父组件中定义 slot:
```html
<template>
<div>
<child>
<template v-slot:header>
<h1>Header for the first child</h1>
</template>
</child>
<child>
<template v-slot:header="slotProps">
<h1>Header for the second child with {{ slotProps.msg }}</h1>
</template>
</child>
</div>
</template>
```
在子组件中接收 slot:
```html
<template>
<div>
<slot name="header" :msg="msg"></slot>
<slot name="content"></slot>
</div>
</template>
```
这样,我们就可以通过 `v-slot:header` 和 `v-slot:header="slotProps"` 来区分不同的 slot,并传递不同的参数。
阅读全文