全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

vue中插槽共有几种?及插槽的作用?

发布时间:2022-09-15 17:07:04
发布人:qyf

vue中插槽共有几种

  三种:默认插槽、具名插槽、作用域插槽

  · 默认插槽

  默认插槽就是指,的作用类似于占符。

  //定义一个全局子组件

Vue.component('child', {

  template: '<div><slot></slot></div>',

});

var vm = new Vue({

  el: '#root',

});

<!--引用child组件-->

<div id="root">

  <child>

    <span>我是占位符</span>

  </child>

</div>

  上述的子组件 child 里定义的 slot 被 span 标签给代替了,如果子组件里没有定义 slot,则 span 标签会被直接忽略,且一个子组件里只能定义一个单个插槽。

  · 具名插槽

  可以通过设置 name 属性,指定显示的位置

  定义一个 组件:

<div class="container">

  <header>

    <slot name="header"></slot>

  </header>

  <main>

    <slot></slot>

  </main>

  <footer>

    <slot name="footer"></slot>

  </footer>

</div>

<base-layout>

  <template v-slot:header>

    <h1>Here might be a page title</h1>

  </template>

  <p>A paragraph for the main content.</p>

  <p>And another one.</p>

  <template v-slot:footer>

    <p>Here's some contact info</p>

  </template>

</base-layout>

  · 作用域插槽

  父组件替换插槽标签,但是内容由子组件来提供

<div class="container">

  <header>

    <slot name="header"></slot>

  </header>

  <main>

    <slot></slot>

  </main>

  <footer>

    <slot name="footer"></slot>

  </footer>

</div>

<base-layout>

  <template v-slot:header>

    <h1>Here might be a page title</h1>

  </template>

  <p>A paragraph for the main content.</p>

  <p>And another one.</p>

  <template v-slot:footer>

    <p>Here's some contact info</p>

  </template>

</base-layout>

相关文章

抖店平台商户被退店还能退货吗?如何提高评分?

2023-09-19

抖店入驻收费多少?开抖店费用是多少?

2023-09-19

想做直播带货的货源哪里来?怎么找货源?

2023-09-19

抖店没有营业执照怎么办?类型有哪些?

2023-09-19

女孩子拍什么最容易火?拍视频怎么赚钱的?

2023-09-19

怎样投抖加不花钱,有哪些技巧?

2023-09-19
在线咨询 免费试学 教程领取