【实例】vue 插槽slot

1.普通插槽

父组件
<template>
  <van-panel title="普通插槽">
    <Child>hello child,我来自父组件</Child>
  </van-panel>
</template>

<script>
import Child from "./Child";
export default {
  components: {
    Child
  }
};
</script>

<style>
</style>

子组件
<template>
  <div style="border: 1px solid green;">
    <h4>这是Child组件</h4>
    <!-- 用来存放父组件的内容 -->
    <slot></slot>
    <p>我喜欢编程</p>
  </div>
</template>

<script>
export default {};
</script>

<style>
</style>

此时可以显示父组件插在子组件里的内容

2.具名插槽

父组件
<template>
  <van-panel title="具名插槽">
    <Child>
      <p slot="left">
        <van-button>左边</van-button>
      </p>
      <p slot="right">
        <van-button>右边</van-button>
      </p>
    </Child>

    <!-- vant的slot -->
    <div slot="footer">
      <van-button type="primary">点击</van-button>
    </div>
  </van-panel>
</template>

<script>
import Child from "./Child";
export default {
  components: {
    Child
  }
};
</script>

<style>
</style>

子组件
<template>
  <div class="flex jc-sa" style="border: 1px solid green;">
    <!-- 接收父组件对应的内容 -->
    <slot name="left"></slot>
    <!-- <slot name="right"></slot> -->
  </div>
</template>

<script>
export default {};
</script>

<style>
</style>

接受了父组件传来的slot 名字,并可以选择使用
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 【2019-3-4更新】Vue 2.6+修改了部分语法,对插槽的使用有了较多的更新。在本文中笔者在相应位置给出了更...
    果汁凉茶丶阅读 10,528评论 2 36
  • 前言 记录平时学到的知识,标题写的大气一点,也算是给自己一点鼓励,希望在技术这条路可以远走越远,路越走越宽~ 文中...
    徐国军_plus阅读 1,426评论 0 12
  • 此文基于官方文档,里面部分例子有改动,加上了一些自己的理解 什么是组件? 组件(Component)是 Vue.j...
    陆志均阅读 3,958评论 5 14
  • VUE Vue :数据驱动的M V Vm框架 m :model(后台提供数据),v :view(页面),vM(模板...
    wudongyu阅读 5,565评论 0 11
  • 组件(Component)是Vue.js最核心的功能,也是整个架构设计最精彩的地方,当然也是最难掌握的。...
    六个周阅读 5,810评论 0 32

友情链接更多精彩内容