浅析vue插槽和作用域插槽的理解


Posted in Javascript onApril 22, 2019

插槽:

插槽,也就是slot,是组件的一块HTML模板,这块模板显示不现实、以及怎样显示由父组件来决定。

插槽模板是slot,它是一个空壳子,因为它显示与隐藏以及最后用什么样的html模板显示由父组件控制。但是插槽显示的位置由子组件自身决定,slot写在组件template的哪块,父组件传过来的模板将来就显示在哪块。这样就使组件可复用性更高,更加灵活。我们可以随时通过父组件给子组件加一些需要的东西。

这个可以参考https://3water.com/article/160047.htm。这位作者写的很详细。

作用域插槽:

插槽可以控制html模板的显示与不显示。作用域插槽其实就是带数据的插槽。

原来父组件可以通过绑定数据传递给子组件。作用域插槽就可以通过子组件绑定数据传递给父组件。

<ul>
 <li
 v-for="todo in todos"
 v-bind:key="todo.id"
 >
 <!-- 我们为每个 todo 准备了一个插槽,-->
 <!-- 将 `todo` 对象作为一个插槽的 prop 传入。-->
 <slot v-bind:todo="todo">
  <!-- 回退的内容 -->
  {{ todo.text }}
 </slot>
 </li>
</ul>
<todo-list v-bind:todos="todos">
 <!-- 将 `slotProps` 定义为插槽作用域的名字 -->
 <template slot-scope="slotProps">
 <!-- 为待办项自定义一个模板,-->
 <!-- 通过 `slotProps` 定制每个待办项。-->
 <span v-if="slotProps.todo.isComplete">✓</span>
 {{ slotProps.todo.text }}
 </template>
</todo-list>

slot-scope就相当于是一个对象,这个对象里面的数据就是子组件插槽绑定传上来了。

在vue 2.5.0+ slot-scope不再限制在<template>元素上使用,而可以用在插槽内的任何元素或组件上。

总结

以上所述是小编给大家介绍的vue插槽和作用域插槽的理解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
用JavaScript获取DOM元素位置和尺寸大小的方法
Apr 12 Javascript
调试JavaScript中正则表达式中遇到的问题
Jan 27 Javascript
javascript实现详细时间提醒信息效果的方法
Mar 11 Javascript
JavaScript实现的伸展收缩型菜单代码
Oct 14 Javascript
JS中用三种方式实现导航菜单中的二级下拉菜单
Oct 31 Javascript
js实时获取窗口大小变化的实例代码
Nov 18 Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
Sep 01 Javascript
gulp安装以及打包合并的方法教程
Nov 19 Javascript
vue在手机中通过本机IP地址访问webApp的方法
Aug 15 Javascript
详解Vue之父子组件传值
Apr 01 Javascript
Node.js API详解之 V8模块用法实例分析
Jun 05 Javascript
微信小程序实现自定义动画弹框/提示框的方法实例
Nov 06 Javascript
详解50行代码,Node爬虫练手项目
Apr 22 #Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
Apr 22 #Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
Apr 22 #Javascript
详解Node.js一行命令上传本地文件到服务器
Apr 22 #Javascript
使用 vue 实例更好的监听事件及vue实例的方法
Apr 22 #Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
Apr 22 #Javascript
关于vue-cli 3配置打包优化要点(推荐)
Apr 22 #Javascript
You might like
用PHP调用Oracle存储过程
2006/10/09 PHP
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
php提交post数组参数实例分析
2015/12/17 PHP
PHP自带方法验证邮箱是否存在
2016/02/01 PHP
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
前端开发部分总结[兼容性、DOM操作、跨域等](持续更新)
2010/03/04 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
2013/01/17 Javascript
thinkphp中常用的系统常量和系统变量
2014/03/05 Javascript
基于编写jQuery的无缝滚动插件
2014/08/02 Javascript
深入解析JavaScript中的立即执行函数
2016/05/21 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
JS 动态判断PC和手机浏览器实现代码
2016/09/21 Javascript
Vue.js绑定HTML class数组语法错误的原因分析
2016/10/19 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
JS仿QQ好友列表展开、收缩功能(第一篇)
2017/07/07 Javascript
bootstrap Table插件使用demo
2017/08/07 Javascript
[42:20]2014 DOTA2华西杯精英邀请赛5 24 DK VS NewBee
2014/05/25 DOTA
Python 网页解析HTMLParse的实例详解
2017/08/10 Python
Python求解任意闭区间的所有素数
2018/06/10 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
Django 多表关联 存储 使用方法详解 ManyToManyField save
2019/08/09 Python
GDAL 矢量属性数据修改方式(python)
2020/03/10 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
2020/05/26 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
css3中仿放大镜效果的几种方式原理解析
2020/12/03 HTML / CSS
可口可乐唇膏:Lip Smackers
2019/08/27 全球购物
MIXIT官网:俄罗斯最大的化妆品公司之一
2020/01/25 全球购物
畜牧兽医本科生的自我评价
2014/03/03 职场文书
我有一个梦想演讲稿
2014/05/05 职场文书
大学生翘课检讨书范文
2014/10/06 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
教师信息技术学习心得体会
2016/01/21 职场文书
《落花生》教学反思
2016/02/16 职场文书
Go语言中break label与goto label的区别
2021/04/28 Golang