<slot></slot>

  <template id="cpn">
    <div>
      <h2>我是组件</h2>
      <p>我是组件2</p>
      <slot></slot>
    </div>
这样这个slot就是留的位置了
  <div id="app">
    <cpn><button>按钮</button></cpn>
    <cpn><span>哈哈哈</span></cpn>
  </div>

<slot><button>给插槽设置默认值</button></slot>
在没有设置的情况下,默认值为button

如果在插槽中有多个值,将一起作为替换元素
  <template id="cpn">
    <div>
      <slot name="left"><button>按钮</button></slot>
      <slot name="center"><span>哈哈</span></slot>
      <slot name="right"><input type="text"></slot>
    </div>
  </template>
<div id="app">
    <cpn><span slot="left">替换</span></cpn>
  </div>
<div id="app">
    <cpn v-show=‘‘ v-for=(item in names)></cpn>
</div>
<template id="cpn">
    <div>
      <h2>我是子组件</h2>
      <p>我是内容</p>
      <button v-show=‘‘ v-for=‘‘>anniu </button>
    </div>
  </template>

//子组件
data(){
            return {
              pLanguage:[‘java‘,‘javaScript‘,‘c++‘,‘python‘]
            }
          }
-子组件模板
<template id="cpn">
    <div>
      <slot :data="pLanguage">
        <ul>
          <li v-for="item in pLanguage">{{item}}</li>
        </ul>
      </slot>
    </div>
  </template>
-用一对slot动态绑定一个属性,然后再父组件里用 slot-scope传值就可以使用了
<div id="app">
   <cpn>
     <template slot-scope="dataApp">
       <span v-for="item in dataApp.data">{{item}} </span>
     </template>
   </cpn>
 </div>
原文:https://www.cnblogs.com/kaba/p/12568525.html