vue slot内容分发
当需要让组件组合使用,混合父组件的内容和子组件的模板的时候,就会用到slot。这个过程就叫内容分发。
最为常用的是两种slot:一种是匿名slot, 一种是具名slot。
匿名 很好理解: 就是默认,没有名字。 具名: 就是slot 有了name属性,有了名字。
下面来个综合的小demo:
父组件:
<div class="testslot">
我是TestSlot:父组件
<slot1>
<p style="color:red">balabala</p>
</slot1>
<br>
<br>
<h2>下面是一个具名插槽的test</h2>
<slot2>
<h3 slot="fr">frr</h3>
645112728@ahwdkhasdn.coaksdb
<p slot="br">ppppppppppppppp</p>
????
</slot2>
</div>
然后再slot1这个子组件中:(这个测试的是匿名slot)
<div class="slot1">
<div>我是slot1组件</div>
<slot></slot>
</div>
在slot2这个组件当中:
<div class="slot2">
<slot name="fr"></slot>
index <slot></slot>
<slot name="br"></slot>
</div>
可以看到效果如下:

理解: 在父组件当中,遇到子组件中 如果还有元素,基本就是开始slot了,然后就可以看那个子组件中对这个slot的调用了。
还需注意的一点是:
可以通过$slot.name访问某个具名slot, $slot 可以访问所有匿名slot,$slots 在业务中几乎用不到 , 在用 render 函数创建组件时会比较有用。
vue slot内容分发的更多相关文章
- 玩转vue的slot内容分发
vue的内容分发非常适合"固定部分+动态部分"的组件的场景,固定部分可以是结构固定,也可以是逻辑固定,比如下拉loading,下拉loading只是中间内容是动态的,而拉到底部都会 ...
- Vue中slot内容分发
<slot>元素是一个内容分发API,使用多个内容插槽时可指定name属性 <!DOCTYPE html> <html> <head> <meta ...
- slot内容分发
vue实现了一套内容分发的API,这套API基于当前的web components规范草案,将<slot>元素作为承载分发内容的出口. 在前面的父子组件中,我们提到过,在vue中,组件实例 ...
- Vue中的slot内容分发
①概述: 简单来说,假如父组件需要在子组件内放一些DOM,那么这些DOM是显示.不显示.在哪个地方显示.如何显示,就是slot分发负责的活. ②默认情况下 父组件在子组件内套的内容,是不显示的. 例如 ...
- Vuejs——(11)组件——slot内容分发
版权声明:出处http://blog.csdn.net/qq20004604 目录(?)[+] 本篇资料来于官方文档: http://cn.vuejs.org/guide/components ...
- Vuejs——slot内容分发
①概述: 简单来说,假如父组件需要在子组件内放一些DOM,那么这些DOM是显示.不显示.在哪个地方显示.如何显示,就是slot分发负责的活. ②默认情况下父组件在子组件内套的内容,是不显示的. 例如代 ...
- vue2.0 之 slot 内容分发
前提:父组件模板的内容在父组件作用域内编译:子组件模板的内容在子组件作用域内编译.被分发的内容会在父作用域内编译. 一.单个插槽 // 子组件模板 child-component <div> ...
- Vue slot插槽通俗解释
slot内容分发是Vue的Api来源 <div id="app"> <my-list> {{msg}} </my-list> </div& ...
- Vue内容分发slot
前面的话 为了让组件可以组合,需要一种方式来混合父组件的内容与子组件自己的模板.这个过程被称为 内容分发 (或 “transclusion” ).Vue实现了一个内容分发 API,参照了当前 Web ...
随机推荐
- Tomcat系列(二)- EndPoint源码解析
在上一节中我们描述了Tomcat的整体架构, 我们知道了Tomcat分为两个大组件,一个连接器和一个容器. 而我们这次要讲的 EndPoint的组件就是属于连接器里面的. 它是一个通信的端点,就是负责 ...
- 设计模式-单例模式code
package singeton; import java.security.SecureRandom; /** * @author Zero * @since 2019-08-13. * Descr ...
- Samba CVE-2017-7494验证实验
漏洞简介 Samba是在Linux和UNIX系统上实现SMB协议的一个软件,不少IoT设备也使用了Samba.2017年5月24日Samba发布了4.6.4版本,修复了一个严重的远程代码执行漏洞,漏洞 ...
- sed 使用正则表达式进行替换
echo "111(222)333" | sed 's/(\(.*\))\(.*\)/\2\2\2/' \1 \2 表示匹配的第几个() 在进行模式匹配时,() 需要加转义符号\ ...
- Eureka 入门,带视频
疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 架构师成长+面试必备之 高并发基础书籍 [Netty Zookeeper Redis 高并发实战 ] 前言 Crazy ...
- vue/cli新旧版本安装方式
一.老版本安装 Shift+鼠标右键 选择打开命令窗口 1.创建项目之前,需先确保本机已经安装node 在命令窗口中执行node -v npm -v 2.一般情况下用npm安装东西比较慢,可以使用淘 ...
- IT兄弟连 HTML5教程 CSS3属性特效 定义省略文本的处理方式
text-overflow属性仅是注解,当文本溢出时是否显示省略标记,并不具备其它的样式属性定义.我们想要实现溢出时产生省略号的效果.还必须定义:强制文本在一行内显示(white-space:nowr ...
- .NET Core 3.0之深入源码理解Host(一)
写在前面 ASP .NET Core中的通用主机构建器是在v2.1中引入的,应用在启动时构建主机,主机作为一个对象用于封装应用资源以及应用程序启动和生存期管理.其主要功能包括配置初始化(包括加载配置以 ...
- mysql 查询存在A表中而不存在B表中的数据
有两张表,学生信息表infolist: 学生姓名表namelist: 现要查询出,存在infolist中,而不存在namelist中的学生,语句如下: select * from infolist w ...
- 【坑】The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone.
在使用spring JDBC 连接数据库时出现的错误: Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: ...