vue-slot插槽

news2024/10/2 20:37:43

作用:让父组件可以向子组件中任意位置插入html结构,也是组件通信方式的一种,适用于父组件===》子组件
分类: 默认插槽、具名插槽、作用域插槽
定义子组件时使用slot组件,在使用子组件是可以决定是否插入具体的html代码

默认插槽

如果在使用子组件插入具体的html代码,那么slot中就会替换成对应的内容
如果使用时没有出入具体的html代码,那么就会使用slot中默认定义的内容

案例1-使用组件有内容

    <!-- 子组件 -->
    <template id="page">
        <div>
            <h1>头部导航栏</h1>

            <p>
                <slot>我是默认内容</slot>
            </p>

            <h1>底部导航栏</h2>
        </div>
    </template>

    <!-- 父组件 -->
        <alert-com>
            <p>我是父组件中定义的内容</p>
        </alert-com>
   
      Vue.component('alert-com',{
        template:'#page',
    })

在这里插入图片描述

案例2-使用组件无内容

 <!-- 子组件 -->
    <template id="page">
        <div>
            <h1>头部导航栏</h1>

            <p>
                <slot>我是默认内容</slot>
            </p>

            <h1>底部导航栏</h2>
        </div>
    </template>
 
  <!-- 父组件 -->
     <alert-com1 ></alert-com1>
     
    Vue.component('alert-com1',{
        template:'#page',
    })

在这里插入图片描述

具名插槽

在定义子组件时可以定义很多slot插槽,并且可以命名。在父组件中使用子组件可以使用slot="center"使用命名可以来选择对应插槽的部分和内容

案例

父组件中:
        <Category>
            <template slot="center">
              <div>html结构1</div>
            </template>

            <template v-slot:footer>
               <div>html结构2</div>
            </template>
        </Category>
子组件中:
        <template>
            <div>
               <!-- 定义插槽 -->
               <slot name="center">插槽默认内容...</slot>
               <slot name="footer">插槽默认内容...</slot>
            </div>
        </template>

作用域插槽

数据在组件自身(子组件),但是数据的生成结构由组件使用者(父组件决定)
(games数据在Category(子)组件中,但使用数据所遍历出来的结构由App(父)组件决定)
由案例可知子组件传值给父组件,子组件中可以通过slot-scope =‘xxx’ (简写 scope=‘xxx’)把数据接收到xxx的对象中

案例

父组件中:
		<Category>
			<template scope="scopeData">
				<!-- 生成的是ul列表 -->
				<ul>
					<li v-for="g in scopeData.games" :key="g">{{g}}</li>
				</ul>
			</template>
		</Category>

		<Category>
			<template slot-scope="scopeData">
				<!-- 生成的是h4标题 -->
				<h4 v-for="g in scopeData.games" :key="g">{{g}}</h4>
			</template>
		</Category>
子组件中:
        <template>
            <div>
            <!-- 通过数据绑定就可以把子组件的数据传到父组件 -->
                <slot :games="games"></slot>
            </div>
        </template>
		
        <script>
            export default {
                name:'Category',
                props:['title'],
                //数据在子组件自身
                data() {
                    return {
                        games:['红色警戒','穿越火线','劲舞团','超级玛丽']
                    }
                },
            }
        </script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1072035.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Survey on Cooperative Perception in an Automotive Context 论文阅读

论文链接 Survey on Cooperative Perception in an Automotive Context 0. Abstract 本文就协同基础设施领域提供相关环境的调查回顾了感知中涉及的主要模块&#xff1a;定位&#xff0c;目标检测和跟踪&#xff0c;地图生成提供了协同感知的 SWOT 1. Intro 无人驾驶汽车的背…

万宾荣获深圳应博会“全球应急产业先锋奖”创始人发表峰会演讲

今年5月&#xff0c;住房和城乡建设部表示将全面启动的城市基础设施生命线安全工程工作&#xff0c;通过各类智能感知设备等数字化手段&#xff0c;及早发现和管控城市燃气、桥梁、供水、排水防涝等领域的风险隐患&#xff0c;切实提高城市安全保障能力、维护人民生命财产安全&…

基于SpringBoot的足球联赛管理系统

基于SpringBoot的足球联赛管理系统 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBootMyBatisVue工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 首页 详情 管理员界面 摘要 基于Spring Boot的足球联赛管理系统代表了一种现代体育赛事管…

这15个海运提单的雷区 你知道吗?

海运提单中英文对照 海运提单主要项目填制说明 1、托运人(Shipper)&#xff1a;即与承运人签订运输契约&#xff0c;委托运输的货主&#xff0c;即发货人。在信用证支付方式下&#xff0c;一般以受益人为托运人;托收方式以托收的委托人为托运人。另外&#xff0c;根据《UCP500》…

【uniapp】subnvue组件数据更新视图未更新问题

背景 : 页面中的弹窗使用了subnvue来写, 根据数据依次展示一个一个的弹窗, 点击"关闭"按钮关闭当前弹窗, 显示下一个弹窗 问题 : 当点击关闭时( 使用的splice() ), 数据更新了 , 而视图没有更新, 实际上splice() 是不仅更新数据, 也可以更新视图的 解决 : this.$fo…

Linux配置JAVA_HOME

[rootlocalhost ~]# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.3 LTS Release: 22.04 Codename: jammy1.下载jdk 官网下载地址 2.将下载好的软件包解压到指定目录 tar -zxf /usr/local/software/jdk-…

雪莱的式子武汉2023(分析+快速幂)

传送门&#xff1a;登录—专业IT笔试面试备考平台_牛客网 思路&#xff1a; 对于每一种质因子&#xff0c;如果他在μ&#xff08;&#xff09;函数中出现两次&#xff0c;那这种情况对答案贡献为0&#xff0c;所以我们可以只讨论每一种因子出现0&#xff0c;1次的情况。 对于…

Altium Designer实用系列(一)----原理图导入PCB、PCB板子外形、多层板绘制等

一、原理图导入PCB 绘制原理图就不必多说了&#xff0c;根据自己电路的需求&#xff0c;去设计电源、芯片的外围电路、MCU外设分配就好。接下来主要介绍的是在导入PCB前对原理图的检查&#xff1a; 元器件标号注解 元器件封装确认&#xff1a;工具->封装管理器&#xff1…

美团代运营优势成都优优聚告诉你!

美团代运营是一种全新的商务服务模式&#xff0c;通过委托美团平台进行运营管理&#xff0c;以提升企业销售业绩和品牌影响力为目标。美团代运营有着许多优势&#xff0c;下面我们来详细了解一下。 首先&#xff0c;美团代运营具有强大的用户流量。作为中国最大的本地生活服务平…

wpf中prism框架

安装prism包&#xff1a; 添加引用 using System; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Linq; using System.Threading.Tasks; using System.Windows; using Prism.DryIoc; using Prism.Ioc;namespace PrismDemo …

一文了解高压放大器的应用

高压放大器是一种能够将低压信号放大到高电压信号的设备或电路。它在许多领域中都有广泛的应用。以下是一些常见的高压放大器的应用领域。 实验室和科学研究&#xff1a;高压放大器在实验室研究和科学领域中扮演着重要的角色。例如&#xff0c;在物理学、化学、生物学等领域的研…

CRM系统软件如何防止客户流失

客户资源是很重要的资产&#xff0c;防止客户数据丢失是所有企业都非常重视的事情。在日常经营管理中&#xff0c;员工离职、工作交接、数据整理都会造成客户数据丢失的情况。作为企业管理工具&#xff0c;CRM客户管理系统都有哪些手段防止客户流失&#xff1f; 1、客户资源存…

【JavaEE重点知识归纳】第6节:数组

目录 一&#xff1a;数组的基本概念 1.什么是数组 2.数组的创建和初始化 3.数组的使用 ​编辑二&#xff1a;数组是引用类型 1.了解JVM的内存分布 2.基本类型变量和引用类型变量的区别 3.认识null 三&#xff1a;数组的应用场景 1.保存数据 2.作为函数的参数 3.作为…

MFC 鼠标悬停提示框

MFC 鼠标悬停提示框 运行效果 在MFC窗口中添加一个控件 工具栏中拖拽List Box到MFC窗口给List Box添加变量 CListBox m_listbox 增加成员变量 CWnd* m_tip_parent_wnd; CToolTipCtrl m_tip;给m_listbox创建提示框 void create_tip_window(CWnd* tip_wnd, CToolTipCtrl* ti…

2023年中国心血管疾病患病人数,心血管疾病用药市场规模分析:化学药占比最大[图]

心脑血管疾病是指由于高脂血症、血液黏稠、动脉粥样硬化、高血压等导致的心脏、大脑及全身组织发生缺血性或出血性疾病的通称。其中&#xff0c;常见的心血管疾病有心脏病、冠心病、老年瓣膜病、心律失常、心肌炎等&#xff1b;脑血管疾病主要分为缺血性脑血管疾病和出血性脑血…

TCP/IP(一)学习资料

一 学习资料 ① 看懂文系列前期需要知识储备 1、掌握一定的计算机基础,掌握既基本概念即可 --> 计算机原理、操作系统2、掌握一些数学知识 --> 进制转换、bytes、bit等 ② 参考资料 背景&#xff1a; 1、自己不是科班出身的计算机专业2、虽…

二叉树的最大深度[简单]

优质博文&#xff1a;IT-BLOG-CN 一、题目 给定一个二叉树root&#xff0c;返回其最大深度。 二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3 示例 2&#xff1a…

【C/C++】STL——深度剖析vector容器

​&#x1f47b;内容专栏&#xff1a; C/C编程 &#x1f428;本文概括&#xff1a;vector的介绍与使用、深度剖析及模拟实现。 &#x1f43c;本文作者&#xff1a; 阿四啊 &#x1f438;发布时间&#xff1a;2023.10.8 一、vector的介绍与使用 1. vector的介绍 像string的学习…

华为数通方向HCIP-DataCom H12-831题库(单选题:241-259)

第241题 设备产生的信息可以向多个方向输出信息,为了便于各个方向信息的输出控制,信息中心定义了10条信息通道,使通道之间独立输出,缺省情况下,以下哪些通道对应的输出方向可以接收Trap信息? A、console通道 B、logbuffer通道 C、snmpagent通道 D、trapbuffer通道 答案:…

学习记忆——数学篇——案例——代数——均值不等式

文章目录 理解记忆法定义定义推导 重点记忆法用途记忆法使用前提做题应用及易错点两种用法 出题模式法模型识别 谐音记忆法一正二定三相等 秒杀方法 理解记忆法 定义 1.算术平均值&#xff1a;设有n个数 x 1 , x 2 , . . . , x n x_1,x_2,...,x_n x1​,x2​,...,xn​&#xf…