vue2.X slot 分发内容
1.概述:
简单来说,假如父组件需要在子组件内放一些DOM,那么这些DOM是显示、不显示、在哪个地方显示、如何显示,就是slot分发负责的活。
2.默认情况下
父组件在子组件内套的内容,是不显示的。
代码:
效果图:
显示内容是一个button按钮,不包含span标签里面的内容;
3.单个slot
简单来说,只使用这个标签的话,可以将父组件放在子组件的内容,放到想让他显示的地方。
代码:
例如这样写的话,结果是:
<button><span>12345</span>为了明确作用范围,所以使用button标签</button>
效果图:
即父组件放在子组件里的内容,插到了子组件的<slot></slot>位置;
注意,即使有多个标签,会一起被插入,相当于用父组件放在子组件里的标签,替换了<slot></slot>这个标签。
4.具体命名 slot
将放在子组件里的不同html标签放在不同的位置
父组件在要分发的标签里添加 slot=”name名” 属性
子组件在对应分发的位置的slot标签里,添加 name=”name名” 属性,
然后就会将对应的标签放在对应的位置了。
代码:
显示结果为:
<button><span slot="first">12345</span>为了明确作用范围,<span slot="second">56789</span>所以使用button标签
</button>
效果图:
5.分发内容的作用域:
被分发的内容的作用域,根据其所在模板决定,例如,以上标签,其在父组件的模板中(虽然其被子组件的children标签所包括,但由于他不在子组件的template属性中,因此不属于子组件),则受父组件所控制。
代码:
6.当没有分发内容时的提示:
假如父组件没有在子组件中放置有标签,或者是父组件在子组件中放置标签,但有slot属性,而子组件中没有该slot属性的标签。
那么,子组件的slot标签,将不会起到任何作用。
除非,该slot标签内有内容,那么在无分发内容的时候,会显示该slot标签内的内容。
代码:
效果图:
7.假如想控制子组件根标签的属性
(1)首先,由于模板标签是属于父组件的,因此,将子组件的指令绑定在模板标签里,是不可以的(因为他归属于父组件);
(2)假如需要通过父组件控制子组件是否显示(例如v-if或者v-show),那么这个指令显然是属于父组件的(例如放在父组件的data下面)。可以将标签写在子组件的模板上。
代码:
说明:
通过父组件(点击按钮,切换v-if指令的值)控制子组件是否显示。
效果图:
(3)假如需要通过子组件,控制子组件是否显示(比如让他隐藏),那么这个指令显然是属于子组件的(会将值放在子组件的data属性下),那么就不能像上面这么写,而是必须放置在子组件的根标签中。
说明:
点击子组件会让子组件消失;
点击父组件的按钮,通过更改子组件的tohidden属性,让子组件重新显示。
子组件的指令绑定在子组件的模板之中(如此才能调用);
效果图:
转载于:https://www.cnblogs.com/crazycode2/p/7615050.html
vue2.X slot 分发内容相关推荐
- vue使用slot分发内容与react使用prop分发内容
vue 将 <slot> 元素作为承载分发内容的出口 // layout.vue <div class="container"><main>&l ...
- vue组件-使用插槽分发内容(slot)
slot--使用插槽分发内容(位置.槽口:作用: 占个位置) 官网API: https://cn.vuejs.org/v2/guide/components.html#使用插槽分发内容 使用组件时,有 ...
- VUE内置组件 vue使用插槽分发内容 组件缓存 实现动画的过渡效果
动态组件 除了允许用户自定义组件之外,Vue还内置了一些组件,以帮助用户高效地开发一些功能.本章将带领大家一起来了解这些内置组件. 某些时候需要动态切换页面部分区域的视图,这个时候内置组件compon ...
- Vue2基础- slot 插槽使用(包括动态插槽示例)
文章目录 插槽是什么 编译作用域 作用域插槽 具名插槽 后备内容(插槽的默认值) 动态插槽名 在线示例 插槽是什么 插槽就是Vue实现的一套内容分发的API,这套 API的设计灵感源自 Web Com ...
- Whale帷幄 - 内容智能分发 内容一键分发
某新锐服装品牌的系列产品在电商平台直播有着不错的交易额,近期准备在某短视频平台开启直播带货以提升销售量,并在网页搜索.公众号.社交平台.其他(短)视频平台等多渠道投放了直播引流宣传视频,不仅购买高价露 ...
- 二、Vue2.0项目结构内容及配置解析
1.node_modules文件夹:用于执行程序的各种依赖 2.Public文件夹,静态资源,里面的东西,打包会原封不动的打包进去 3.src assets文件夹:公用的静态资源,webpack会打包 ...
- vue2.1-本地应用-内容绑定,事件绑定
一.内容绑定,事件绑定 1.v.text-设置标签的文本值 <!--本地应用--> <!DOCTYPE html> <html lang="en"&g ...
- Vuejs:组件 slot 内容分发
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 本文是在官方文档的基础上,更加细致的说明,代码更多更全. 简单来说,更适合新手阅读 (二十八)Slo ...
- vue组件之具名slot 的分类案例
需求说明: 利用组件的复用完成美食.游戏.电影的分类布局. 使用具名slot完成分类组件的不同内容显示. 实现过程: 1.创建一个分类子组件(Category.vue),在子组件中定义具名插槽: &l ...
最新文章
- Hadoop简要介绍
- pythonfor循环100次_在for循环中只打印一次
- jsp java语法_JSP基础语法
- SAP CRM partner function在客户项目中的实际用途
- C#中字符串的内存分配与驻留池
- .pro.user文件
- java学习(70):GUL图形用户界面初识
- Linux钩子拦截删除文件,在Linux中保存钩子文件
- 使用WxPython进行Win32下Python编程
- VBA学习过程中遇到的问题(主要针对Excel)
- CV学习-1 k-means代码解读
- Java Socket 编程
- linux c程序 bash,linux-如何使bash程序接受来自另一个C程序的命令
- python官网中文官网-Python官方中文文档强势来袭
- jmeter 中的Parameters 和Body Data的区别
- 【电脑使用】如何快速给PDF添加书签
- con和com开头单词规律_英语单词速记小技巧
- c语言flag什么意思,立flag是什么意思flag是什么?立flag用语出处和使用方法
- 张桂梅PK清华副教授:不要站在高楼上,傲慢地指着大山
- 节后安全生产会议记要
热门文章
- linux禁用及启用pcie设备,KVM 介绍(4):I/O设备直接分配和 SRIOV [KVM PCI/PCIe PassThrough SRIOV]...
- 知道的C君带你学语言的作业答案,知到《C君带你玩编程》2020章节测试(含答案)...
- 不插电的计算机科学百度云,【精品】不插电的计算机科学.pdf
- 精美UI版iApp对接hybbs论坛功能APP源码
- 企业3级推广报单分销源码下载会员注册管理系统
- 我厨蔬菜生鲜商城小程序源码
- php人才招聘网可二开
- ASP.net与PHP两大网站开发架构优势对比
- CSS学习之外边距合并
- click() bind() live() delegate()区别