以前,Vue组件总是一个个的空标签的形式出现的,那么如果说组件标签里面有内容,那么要获取这些内容要怎么办呢?
Vue提供了一个解决方案:slot内容分发,其作用就是用来获取组件中的原内容(就是组件标签内部的内容)。
用法分为两种情况:当组件内的原内容结构比较简单的时候可以使用单一slot,当原内容结构比较复杂的时候使用具名slot;
单一slot:在组件模板合适的位置插入slot组件即可;
<div id="container" v-cloak>
<my-compo>你好,2018!</my-compo>
<!-- 在这里组件的原内容是:你好,2018 ,比较简单-->
</div>
<!-- 在组件模板中获原内容 -->
<template id="myCompon">
<div class="content">
<h3>{
{house.price}}</h3>
<slot>没有原内容</slot>
<!-- 当没有原内容的时候就会显示“没有原内容”,有的话就会被替换成原内容 -->
</div>
</template>
具名slot: