浅析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 窗口加载蒙板 内嵌网页内容
Nov 19 Javascript
jQuery EasyUI API 中文文档 - Dialog对话框
Nov 15 Javascript
原生JavaScript实现异步多文件上传
Dec 02 Javascript
javascript类型系统 Window对象学习笔记
Jan 07 Javascript
BootStrap selectpicker后台动态绑定数据的方法
Jul 28 Javascript
让Vue也可以使用Redux的方法
May 23 Javascript
JS与SQL方式随机生成高强度密码示例
Dec 29 Javascript
基于JS实现前端压缩上传图片的实例代码
May 14 Javascript
原生JS实现列表内容自动向上滚动效果
May 22 Javascript
Vue实现拖放排序功能的实例代码
Jul 08 Javascript
React传值 组件传值 之间的关系详解
Aug 26 Javascript
vue项目强制清除页面缓存的例子
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读取XML文件的方法实例总结【DOMDocument及simplexml方法】
2019/09/10 PHP
Laravel监听数据库访问,打印SQL的例子
2019/10/24 PHP
jQuery AJAX实现调用页面后台方法和web服务定义的方法分享
2012/03/01 Javascript
JavaScript异步调用定时方法并停止该方法实现代码
2012/03/16 Javascript
js获取某元素的class里面的css属性值代码
2014/01/16 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
JavaScript实现表格快速变色效果代码
2015/08/19 Javascript
详解javascript中的事件处理
2015/11/06 Javascript
深入理解JavaScript中的并行处理
2016/09/22 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
JavaScript数组push方法使用注意事项
2017/10/30 Javascript
nodejs中art-template模板语法的引入及冲突解决方案
2017/11/07 NodeJs
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
微信小程序中的上拉、下拉菜单功能
2020/03/13 Javascript
Ant Design Pro 之 ProTable使用操作
2020/10/31 Javascript
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
python监控网卡流量并使用graphite绘图的示例
2014/04/27 Python
python批量提取word内信息
2015/08/09 Python
详解Python学习之安装pandas
2019/04/16 Python
python 判断linux进程,并杀死进程的实现方法
2019/07/01 Python
pycharm配置git(图文教程)
2019/08/16 Python
python lambda表达式在sort函数中的使用详解
2019/08/28 Python
python中bytes和str类型的区别
2019/10/21 Python
python 通过exifread读取照片信息
2020/12/24 Python
学校岗位设置方案
2014/01/16 职场文书
大学军训感言200字
2014/02/26 职场文书
十八届三中全会感言
2014/03/10 职场文书
婚礼主持结束词
2014/03/13 职场文书
目标管理责任书
2014/04/15 职场文书
港澳通行证委托书怎么写
2014/08/02 职场文书
村安全生产责任书
2014/08/25 职场文书
镇创先争优活动总结
2014/08/28 职场文书
上课随便讲话检讨书
2014/09/12 职场文书
详解Python描述符的工作原理
2021/06/11 Python
Vue提供的三种调试方式你知道吗
2022/01/18 Vue.js
mapstruct的用法之qualifiedByName示例详解
2022/04/06 Java/Android