chaihongjun.me

[Vue]入门学习之二十一Vue的插槽slot

Vue的slot插槽,可以从字面意思来了解用途,占用占坑的意思,既然是占坑肯定是先占坑后面有其他具体的内容来替换代替。根据slot的应用场景可以分为匿名slot和具名slot。首先介绍匿名slot:


通过比对两个子组件可以发现,如果不使用slot,则组件内容不会显示,子组件模板会把子组件内容完全替换了(包括子组件标签内的内容)。如果想保留下来则需要使用slot

以上对比案例只使用到一个slot,所以不需要给这个slot命名,但是如果有多个slot怎么办呢?必须给每个slot一个名称,也就是具名slot:

同样对比两个子组件,第一个子组件内容使用的slot没有具名,因此整个部分显示出来。第二个分别具名name和job,所以可以分别显示内容。值得注意的是作为具名slot,slot的name属性值必须和标签的slot属性值一致对应,才能使slot占位的地方被正确的后续标签内容替换。

知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»