当前位置: 代码迷 >> 综合 >> Vue slot 插槽的使用
  详细解决方案

Vue slot 插槽的使用

热度:78   发布时间:2023-12-14 23:44:12.0

 

slot插槽作为分发内容的出口

假设看这篇文章的你已经有了一定的Vue组件基础

let btn = Vue.component('btn', {data() {return {}},template: `<button>1
</button>`})

上述代码创建了一个名为btn的全局组件。接下来我们在其他页面中调用这个插件

let vm = new Vue({el: '#app',data: {name: 'wxs'},template: `<div><btn></btn><btn></btn><btn></btn></div>`})

得到的页面效果如下

这样得到的所有插件都是前篇一律,很单调。

这时我们可以使用slot插槽来满足不同组件的需要。

我们在组件的button中加入slot,如下图所示

let btn = Vue.component('btn', {data() {return {}},template: `<button><slot></slot>
</button>`})

然后就可以对组件进行插值

let vm = new Vue({el: '#app',data: {name: 'wxs'},template: `<div><btn>1</btn><btn>2</btn><btn>3</btn></div>`})

得到的页面效果如下

以上就是slot最基本的用法,如果向往组件分发两个及以上的内容的话,我们需要用到更高级的具名插槽。

  相关解决方案