Vue脚手架插槽 slot 学习

slot插槽

<slot></slot>

1. 默认插槽

引入:原本的分类组件是显示的文字,但现在某些需要换成图片 / 视频,用很多的 v-show 去控制就很麻烦

作用:直接把组件标签中的所有内容放到想要放的位置

App.vue

<template><div id="app"><!-- 默认插槽:直接把所有东西解析到该组件里的<slot></slot>位置 --><ElementTest><h6>789</h6><h6>hhh</h6></ElementTest></div>
</template><script>
import ElementTest from './components/ElementTest.vue'export default {name: 'App',components: {ElementTest}
}
</script><style>
</style>

ElementTest.vue

<template><div id="container"><h2>123</h2><!-- 1. slot标签会将App.vue中<ElementTest>子组件标签中的内容全部放入到当前位置 --><slot></slot><h2>456</h2><!-- 2. 子组件可以插入多个slot槽 --><!-- <slot></slot> --></div>
</template><script>export default{		name: 'ElementTest'}
</script><style scoped>#container {text-align: center;}
</style>

2. 具名插槽

引入:某个分类组件中需要显示多个分类,每个分类的内容各不相同

作用:可以分别控制组件中的想要渲染的html标签的内容,slot标签用name属性取名,<template>标签使用属性 slot = [slot标签的name名]

App.vue

<template><div id="app"><!-- 默认插槽:直接把所有东西解析到组件里的<slot></slot>位置 --><ElementTest><!-- 1. 组件标签中用template标签包裹需要渲染的内容,定义属性 slot = [slot标签的name名] --><template slot="first_slot"><h6>hhhh</h6></template><template slot="second_slot"><h6>wwww</h6></template></ElementTest></div>
</template><script>
import ElementTest from './components/ElementTest.vue'export default {name: 'App',components: {ElementTest}
}
</script><style>
</style>

ElementTest.vue

<template><div id="app"><ElementTest><!-- 1. 组件标签中用template标签包裹需要渲染的内容,定义属性 slot = [slot标签的name名] --><template slot="first_slot"><h6>hhhh</h6></template><template slot="second_slot"><h6>wwww</h6></template></ElementTest></div>
</template><script>
import ElementTest from './components/ElementTest.vue'export default {name: 'App',components: {ElementTest}
}
</script><style>
</style>

3. 作用域插槽

引入:多个相同组件中显示的分类内容一样,但结构不同(第一个无序列表、第二个有序列表)

作用:可以给slot标签设 :自定义属性 = [要传的数据名],从而将定义插槽的子组件的指定属性传给插槽的使用者App.vue中的定义的子组件标签对象,配合template,定义scope属性=[scope名],通过 [scope名].[自定义属性] 在template中可以获取到传过来的参数值

App.vue

<template><div id="app"><ElementTest><!-- 1. 组件标签中用template标签包裹需要渲染的内容,定义属性 slot = [slot标签的name名] --><template scope="params"><template v-if="params.isOrder"><ol><li v-for="item in list" :key="item.id">{{item.name}}</li></ol></template><template v-else><ul><li v-for="item in list" :key="item.id">{{item.name}}</li></ul></template></template></ElementTest></div>
</template><script>
import ElementTest from './components/ElementTest.vue'export default {name: 'App',components: {ElementTest},data() {return {list: [{id: '001', name: '张三',age: 18},{id: '002', name: '李四', age: 19}]}}
}
</script><style>
</style>

ElementTest.vue

<template><div id="container">   <!-- isOrder的值传递给 ElementTest 组件对象 --><slot :isOrder="true"></slot><slot :isOrder="false"></slot></div>
</template><script>export default{		name: 'ElementTest',}
</script><style>
</style>

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

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

相关文章

数据模型(models)

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 &#xff08;1&#xff09;在App中添加数据模型 在app1的models.py中添加如下代码&#xff1a; from django.db import models # 引入django.…

Qt开发 | Qt界面布局 | 水平布局 | 竖直布局 | 栅格布局 | 分裂器布局 | setLayout使用 | 添加右键菜单 | 布局切换与布局删除重构

文章目录 一、Qt界面布局二、Qt水平布局--QHBoxLayout三、Qt竖直布局四、Qt栅格布局五、分裂器布局代码实现六、setLayout使用说明七、布局切换与布局删除重构1.如何添加右键菜单2.布局切换与布局删除重构 一、Qt界面布局 Qt的界面布局类型可分为如下几种 水平布局&#xff08;…

谐波减速器行业发展速度有望加快 工业机器人领域为其最大需求端

谐波减速器行业发展速度有望加快 工业机器人领域为其最大需求端 谐波减速器指通过增大转矩、降低转速等方式实现减速目的的精密传动装置。谐波减速器具有轻量化、体积小、承载能力大、精度高、可靠性高、运行噪音小等优势&#xff0c;广泛应用于工业机器人、半导体制造、精密医…

AWS中国云配置强制MFA策略后导致AWS CLI和IDEA中无法使用问题

问题 之前的文章《AWS中国IAM用户强制使用MFA》&#xff0c;启用必须使用MFA策略才能使用AWS服务。但是&#xff0c;开启之后&#xff0c;遇到了本地开发环境的IDEA和AWS CLI不能正常调用ssm的配置中心问题。 解决思路 在本地配置文件中&#xff0c;配置使用能够正常使用ssm…

web开发前后端分离

文章目录 1.广义上的前后端分离 1.广义上的前后端分离 优点&#xff1a; 1.前后端分离&#xff0c;便于后期维护;2.前端服务器只需要返回静态界面&#xff0c;后端服务器只提供增删查改的数据返回&#xff0c;把数据的转换逻辑的处理压力转移到了客户端;

Eureka服务发现机制解析:服务实例的唯一标识

引言 Eureka是Netflix开源的服务发现框架&#xff0c;它是Spring Cloud体系中的核心组件之一。在微服务架构中&#xff0c;服务实例的动态注册与发现是实现服务间解耦和通信的关键。Eureka通过提供服务注册中心&#xff0c;使得各微服务实例能够注册自己并发现其他服务实例。本…

Android Java、NDK/JNI、C++打印log

目录 一、Java上层打印log二、Android Studio NDK/JNI中打印log2.1 示例2.2 log类型 三、Native层打印LOG3.1 Liblog 库3.2 Liblog的用法3.3 输出ALOGV等级的log3.4 FUNCTION与func的区别 一、Java上层打印log Android的Java程序直接调用android.util.Log类来输出Log即可。 Lo…

MySQL 8版本的新功能和改进有哪些?(MySQL收藏版)

目录 1. 简单介绍 2. 发展历史 3. MySQL 8产品特性 4. 数据库性能重点分析 1. 原生 JSON 支持改进 2. 隐式列优化 3. 改进的查询优化器 4. 并行查询 5. 分区表改进 MySQL 是一个流行的开源关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;由瑞典公司 M…

了解SD-WAN与传统WAN的区别

近年来&#xff0c;许多企业选择了SD-WAN作为他们的网络解决方案。云基础架构的SD-WAN不仅具备成本效益&#xff0c;而且提供更安全、更可靠的WAN连接&#xff0c;有助于实现持续盈利。客户能够更好地控制他们的网络&#xff0c;个性化定制且无需额外成本。 那么&#xff0c;为…

服务器数据恢复—raid故障导致部分分区无法识别/不可用的数据恢复案例

服务器数据恢复环境&#xff1a; 一台某品牌DL380服务器中3块SAS硬盘组建了一组raid。 服务器故障&#xff1a; RAID中多块磁盘出现故障离线导致RAID瘫痪&#xff0c;其中一块硬盘状态指示灯显示红色。服务器上运行的数据库在D分区&#xff0c;备份文件存放在E分区。由于RAID瘫…

LabVIEW火箭发动机试车台程序

火箭发动机试车台是火箭发动机研制过程中的关键环节之一&#xff0c;通过模拟实际工作环境对发动机进行测试&#xff0c;确保其性能和可靠性。随着科研需求的不断变化和技术的进步&#xff0c;对试车台的灵活性、可靠性和易维护性提出了更高的要求。基于LabVIEW开发的试车台程序…

[信号与系统]模拟域中的一阶低通滤波器和二阶滤波器

前言 不是学电子出身的&#xff0c;这里很多东西是问了朋友… 模拟域中的一阶低通滤波器传递函数 模拟域中的一阶低通滤波器的传递函数可以表示为&#xff1a; H ( s ) 1 s ω c H(s) \frac{1}{s \omega_c} H(s)sωc​1​ 这是因为一阶低通滤波器的设计目标是允许低频信…

什么是深拷贝,什么是浅拷贝

在计算机科学中&#xff0c;特别是涉及到编程语言如JavaScript、Java、C等时&#xff0c;我们经常遇到“深拷贝”和“浅拷贝”这两个概念。它们都与对象的复制有关&#xff0c;但处理方式不同。 浅拷贝 (Shallow Copy): 浅拷贝只复制对象的顶层属性&#xff08;或称为“引用”…

go switch 与 interface

go switch 与 interface 前言 前言 github.com/google/cel-go/common/types/ref type Val interface {// ConvertToNative converts the Value to a native Go struct according to the// reflected type description, or error if the conversion is not feasible.ConvertTo…

05-java基础——循环习题

循环的选择&#xff1a;知道循环的次数或者知道循环的范围就使用for循环&#xff0c;其次再使用while循环 猜数字 程序自动生成一个1-100之间的随机数&#xff0c;在代码中使用键盘录入去猜出这个数字是多少&#xff1f; 要求&#xff1a;使用循环猜&#xff0c;一直猜中为止…

时序预测 | Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab基于CNN-BiLSTM-Attention多变量时间序列多步预测&#xff1b; 2.多变量时间序列数据集&#xff08;负荷数据集&#xff09;&#xff0c;采用前96个时刻预测的特征和负荷数据预测未来96个时刻的负荷数据&…

品牌为什么需要3D营销?

在对比传统品牌营销手段时&#xff0c;线上3D互动营销以其更为生动的展示效果脱颖而出。它通过构建虚拟仿真场景&#xff0c;创造出一个身临其境的三维空间&#xff0c;充分满足了客户对实体质感空间的期待。不仅如此&#xff0c;线上3D互动营销还能实现全天候24小时无间断服务…

PyTorch中“No module named ‘torch._six‘“的报错场景及处理方法

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 引入 在使用PyTorch时&#xff0c;您可能会遇到"No module named ‘torch._six’"的错误。这通常是因为PyTorch的某些…

中介子方程三十二

XXFXXuXXWXXuXXdXXrXXαXXuXpXXKXXpXuXXαXXrXXdXXuXWXπXXWXeXyXeXbXπXpXXNXXqXeXXrXXαXXuXpXXKXXpXuXXαXXrXXeXqXXNXXpXπXbXeXyXeXWXXπXWXuXXdXXrXXαXXuXpXXKXXpXuXXαXXrXXdXXuXXWXXuXXFXXEXXyXXEXXrXXαXXuXpXXKXXpXuXXαXXrXXEXXyXXαXiXXαXiXrXkXtXyXXpXVXXdXuXWX…

梅花易数排盘 api数据接口

梅花易数为北宋易学家邵雍所传&#xff0c;因观梅知易数而得名。以卦象生克为主&#xff0c;而不分析爻象。是为梅花易数预测。 接口名称&#xff1a;流盘-梅花易数 接口平台&#xff1a;缘份居国学研究(缘份居国学研究开发者API) 接口地址&#xff1a;https://api.yuanfenj…