浅析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 相关文章推荐
Jquery阻止事件冒泡 event.stopPropagation
Dec 11 Javascript
js自动查找select下拉的菜单并选择(示例代码)
Feb 26 Javascript
js中回调函数的学习笔记
Jul 31 Javascript
json字符串之间的相互转换示例代码
Aug 21 Javascript
基于jquery步骤进度条源码分享
Nov 12 Javascript
AngularJS实用开发技巧(推荐)
Jul 13 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
Nov 16 Javascript
JavaScript Date 知识浅析
Jan 29 Javascript
JS简单获取当前日期和农历日期的方法
Apr 17 Javascript
解决vue中使用Axios调用接口时出现的ie数据处理问题
Aug 13 Javascript
Vue press 支持图片放大功能的实例代码
Nov 09 Javascript
防止Layui form表单重复提交的实现方法
Sep 10 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
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
PHP基于递归算法解决兔子生兔子问题
2018/05/11 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
理解Javascript_12_执行模型浅析
2010/10/18 Javascript
JavaScript 学习笔记之操作符(续)
2015/01/14 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
2015/03/01 Javascript
javascript实现控制文字大中小显示
2015/04/28 Javascript
js实现文字向上轮播功能
2017/01/13 Javascript
Async Validator 异步验证使用说明
2017/07/03 Javascript
jQuery使用each遍历循环的方法
2018/09/19 jQuery
详解webpack打包后如何调试的方法步骤
2018/11/07 Javascript
Electron + vue 打包桌面操作流程详解
2019/06/24 Javascript
JavaScript Tab菜单实现过程解析
2020/05/13 Javascript
详解node.js创建一个web服务器(Server)的详细步骤
2021/01/15 Javascript
Python基本语法经典教程
2016/03/11 Python
Python绘制3d螺旋曲线图实例代码
2017/12/20 Python
单链表反转python实现代码示例
2018/02/08 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
python的pygal模块绘制反正切函数图像方法
2019/07/16 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
PyCharm 专业版安装图文教程
2020/02/20 Python
Python使用windows设置定时执行脚本
2020/11/12 Python
python 简单的调用有道翻译
2020/11/25 Python
鼠标滚轮事件和Mac触控板双指事件
2019/12/23 HTML / CSS
Peter Alexander新西兰站:澳大利亚领先的睡衣设计师品牌
2016/12/10 全球购物
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
大学生表扬信范文
2014/01/09 职场文书
信息学院毕业生自荐信范文
2014/03/04 职场文书
2015年元旦文艺汇演主持词
2014/03/26 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
2014年国庆标语
2014/06/30 职场文书
节能环保演讲稿
2014/08/28 职场文书
学生会感恩节活动方案
2014/10/11 职场文书
2016清明节森林防火广播稿
2015/12/17 职场文书
Mysql Innodb存储引擎之索引与算法
2022/02/15 MySQL
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL