Vue3—06—插槽slot


 

 

一、插槽用来干什么?

可以用props来转递数据,

但是传递html标签这种结构怎么做?使用插槽slot;

 

slot可以让父组件来决定,这一块到底放什么标签、内容、元素;

 

 

 

 

 

 如果有多个插槽,并且灭有具名插槽和动态插槽名,如下图所以,那么每个插槽都会被插入父组件的内容,所以下图会有九个内容;

 

 2.具名插槽

 

 具名插槽也可以简写:

 

 

3.动态插槽名

可以使用【】来像v-blind一样,获取组件逻辑data里的属性,然后给标签的slot属性赋值;

 

 

 

 

 二、作用域插槽

子组件的数据如果不通过emit和on是不可能传到父组件的,父组件也无法使用;

 

 

这个时候,父组件使用v-slot=“自定义一个名字”会获取子组件slot标签里的值;

这个时候就不用通过子父组件才可以传数据了,直接通过作用域插槽就可以传数据;

 

 

2.作用域插槽可以缩写

如果只使用一个插槽那么可以简写,但如果我们使用了多个插槽,并且用到了具名插槽,就不可以简写;

 

 

看最后一张图片,作用域插槽和具名插槽的区别:一个是等于号一个是冒号;

posted @ 2021-09-19 20:57  Eric-Shen  阅读(417)  评论(0编辑  收藏  举报