slot插槽

news/2024/7/10 1:31:04 标签: vue

什么是插槽

插槽(Slot)是Vue提出来的一个概念,正如名字一样,插槽用于决定将所携带的内容,插入到指定的某个位置,从而使模板分块,具有模块化的特质和更大的重用性。

插槽有两种

1.具名插槽

给具体的插槽命名,并在使用的时候传入插槽的名称

import Vue from 'vue'

// 定义组件componentOne 
const compoentOne = {
    template: `
        <div :style="style1">
            <div>
                <slot name="header"></slot> // 定义一个名称为header的插槽
            </div>
            <div>
                <slot name="body"></slot> // 定义一个名称为body的插槽
            </div>
        </div>
    `,
    data () {
        return {
            style1: {
                width: '200px',
                height: '200px'
                border: '1px solid #ccc'
            }
        }
    }   
}
————————————————
版权声明:本文为CSDN博主「星空之火@田兴」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43638968/article/details/103923899
// 调用组件
new Vue({
    components: {
        ComOne: componentOne 
    },
    el: '#id',
    data () {
        return {
            val1: '123',
            val2: '456'
        }
    },
    template: `
        <div>
            <com-one>
                <span slot="header">{{val1}}</span> // 使用插槽'header**重点内容**'
                <span slot="body">{{val2}}</span> // 使用插槽'body'
            </com-one>
        </div>
    `
})
————————————————
版权声明:本文为CSDN博主「星空之火@田兴」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43638968/article/details/103923899

2.作用域插槽

将定义插槽的变量作用域到使用插槽中

import Vue from 'vue'

// 定义组件componentOne 
const compoentOne = {
    template: `
        <div :style="style1">
            <slot :aa="val1" :bb="val2"></slot> // 给插槽传入变量
        </div>
    `,
    data () {
        return {
            style1: {
                width: '200px',
                height: '200px'
                border: '1px solid #ccc'
            },
            val1: 'slot1',
            val2: 'slot2'
        }
    }   
}
————————————————
版权声明:本文为CSDN博主「星空之火@田兴」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43638968/article/details/103923899
// 调用组件
new Vue({
    components: {
        ComOne: componentOne 
    },
    el: '#id',
    data () {
        return {
            val1: '123'
        }
    },
    template: `
        <div>
            <com-one>
                <span slot-scope="props">{{props.aa}}{{props.bb}}{{val1}}</span> // 定义插槽传入的对象props,并使用
            </com-one>
        </div>
    `
})
————————————————
版权声明:本文为CSDN博主「星空之火@田兴」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43638968/article/details/103923899

http://www.niftyadmin.cn/n/1836018.html

相关文章

vue项目中如何引入阿里矢量图

1.首先去阿里矢量图官网 https://www.iconfont.cn/collections/index?spma313x.7781069.1998910419.da2e3581b&type1 2.在阿里矢量图官网把我们需要的矢量图加入到购物车里面 3.加入到购物车以后打开右上角的购物车图表&#xff0c;会在右侧弹出一个页面 4.然后我们选择…

docker 在centos7 中docker info报错docker bridge-nf-call-iptables is disabled解决办法

执行docker info出现如下警告 解决办法&#xff1a; vi /etc/sysctl.conf 添加以下内容 net.bridge.bridge-nf-call-ip6tables 1 net.bridge.bridge-nf-call-iptables 1 net.bridge.bridge-nf-call-arptables 1 最后再执行 sysctl -p 已经没有报错了

NTDETECT.COM 丢失(NTDETECT failed)解决方法

NTDETECT.COM 丢失&#xff08;NTDETECT failed&#xff09;解决方法 1.提示&#xff1a; 1&#xff1a;C:\windows 要登陆到哪个window安装 &#xff08;按enter取消&#xff09;&#xff1f; 输入1 回车 2.输入密码&#xff0c; 3.输入 copy x:\i386\ntdetect.com c:\win…

[转]飞秋使用说明与常见问题解决方法

[转]飞秋使用说明与常见问题解决方法 &#xff31;&#xff1a;飞秋如果绑定网卡&#xff0c;或绑定IP、绑定mac&#xff1f; &#xff21;&#xff1a;右击任务栏上的飞秋图标&#xff0c;点“系统设置”→“详细设置” →“网络设置”&#xff0c;在“多网卡电脑请指定”下选…

开源项目之Android Calender(日历组件)

Calender 是 Android 平台的一个日历显示组件&#xff0c;可以显示一整月历。项目适合初学者学习组件开发&#xff0c;项目如图&#xff1a; 该组件是在ImageView基础上扩展出来的&#xff0c;而Cell 是组件的格子&#xff0c;负责显示日期等。 public class Cell {private sta…

vue前端路由原理

前言&#xff1a;看完此文章&#xff0c;让你对前端路由原理有一个比较深的了解&#xff0c;必能掌握路由原理&#xff0c;面试必过 路由实现原理 通过改变URL&#xff0c;在不重新请求页面的情况下&#xff0c;更新页面视图 前端路由的两种模式 Hash------默认值&#xff0c…

dos下 java编译不通过问题

我在编译我的第一个JAVA程序"Hello world" 时出现一个问题 如图所示&#xff1a; 问题出现在环境的配置那里。 把原来的配置修改下就OK呢。 CLASSPATH&#xff0c;值&#xff1a;“.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar”&#xff0c; 注意前面的“.;…

linux下关闭ipv6提高网络访问速度

这个是一个真实的实例。一个是运行java web应用的linux服务器&#xff0c;一个是运行oralcle数据库的linux服务器。java 应用的访问速度总是很慢。 因为这个java系统是一个成熟的产品&#xff0c;所以本身有问题的可能性很小。 经过测试发现&#xff0c;2台服务器之间&#xff…