vue中的 $slot 获取插槽的节点实例


Posted in Javascript onNovember 12, 2019

vue 中的 $slot

以前一直不知到这个东西,后来发现 vue api 中 藏着很多的 很神奇的 api,比如这个

vue中的 $slot 获取插槽的节点实例

具名插槽很好理解,但是那个 default 就有点难了,

写了一个炒鸡简单的 demo

father:

<template>
<div>
<button @click="getSlot">getSlot</button>
<try ref="try">
<div class="hello1">hello1</div>
<div class="hello2">hello2</div>
<div class="hello3">hello3</div>
</try>
<button @click="getArc">getArc</button>
</div>
</template>
<script>
import try from './try'
export default {
components: {
try
},
methods: {
getSlot () {
this.$refs.try.getSlot()
}
}
}
</script>

try.vue

<template>
<div>
<h2>我是子组件 的 标题</h2>
<slot>
只有在没有内容分发的时候我才会出现
</slot>
</div>
</template>
<script>
export default {
methods: {
getSlot () {
console.log(this.$slots)
}
}
}
</script>

点击了getSlot 之后的输出

vue中的 $slot 获取插槽的节点实例

可以看到 default ,

里面有插入的 三个 标签和 三个标签之间的 两个 空格,就有 5 个 了

通过这个就能很轻易的 拿到 父组件 通过插槽插入 子组件的 标签了

this.slotChildren = []
for (let i = 0; i< this.$slots.default.length; i++) {
if (that.$slots.default[i].elm.nodeType !== 3) {
that.slotChildren.push(that.$slots.default[i]) // 获得 那些 插入的 按钮
}
}

以上这篇vue中的 $slot 获取插槽的节点实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript方法和技巧大全
Dec 27 Javascript
(function($){...})(jQuery)的意思
Jul 22 Javascript
javascript 实现 秒杀,团购 倒计时展示的记录 分享
Jul 12 Javascript
使用JavaScript 编写简单计算器
Nov 24 Javascript
JS函数this的用法实例分析
Feb 05 Javascript
jQuery团购倒计时特效实现方法
May 07 Javascript
使用angularjs创建简单表格
Jan 21 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
Jul 14 Javascript
jQuery使用serialize()表单序列化时出现中文乱码问题的解决办法
Jul 27 Javascript
jQuery导航条固定定位效果实例代码
May 26 jQuery
VueCli3.0中集成MockApi的方法示例
Jul 05 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
Oct 09 Javascript
解决vue v-for src 图片路径问题 404
Nov 12 #Javascript
vue 项目打包时样式及背景图片路径找不到的解决方式
Nov 12 #Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
Nov 12 #Javascript
解决Vue在Tomcat8下部署页面不加载的问题
Nov 12 #Javascript
JS如何实现动态添加的元素绑定事件
Nov 12 #Javascript
解决Vue打包上线之后部分CSS不生效的问题
Nov 12 #Javascript
微信小程序点击顶部导航栏切换样式代码实例
Nov 12 #Javascript
You might like
php基于GD库画五星红旗的方法
2015/02/24 PHP
Zend Framework教程之Zend_Registry对象用法分析
2016/03/22 PHP
ThinkPHP开发--使用七牛云储存
2017/09/14 PHP
php实现的中秋博饼游戏之绘制骰子图案功能示例
2017/11/06 PHP
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
最新的10款jQuery内容滑块插件分享
2011/09/18 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
jquery.post用法关于type设置问题补充
2014/01/03 Javascript
Jsonp post 跨域方案
2015/07/06 Javascript
Javascript函数的参数
2015/07/16 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
JS 通过系统时间限定动态添加 select option的实例代码
2016/06/09 Javascript
JS基于onclick事件实现单个按钮的编辑与保存功能示例
2017/02/13 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
vue.js移动数组位置,同时更新视图的方法
2018/03/08 Javascript
jQuery中图片展示插件highslide.js的简单dom
2018/04/22 jQuery
Vue2.0仿饿了么webapp单页面应用详细步骤
2018/07/08 Javascript
解决angularjs WdatePicker ng-model的问题
2018/09/13 Javascript
redux.js详解及基本使用
2019/05/24 Javascript
ECharts地图绘制和钻取简易接口详解
2019/07/12 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
深入理解Antd-Select组件的用法
2020/02/25 Javascript
[36:20]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.17
2020/12/18 DOTA
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
2015/08/16 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
python flask中动态URL规则详解
2019/11/22 Python
keras得到每层的系数方式
2020/06/15 Python
基于CSS3的animation属性实现微信拍一拍动画效果
2020/06/22 HTML / CSS
Nordgreen手表德国官方网站:丹麦极简主义手表
2019/10/31 全球购物
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
网页美工求职信
2014/02/15 职场文书
出纳工作检讨书范文
2014/12/27 职场文书
项目经理岗位职责
2015/01/31 职场文书
2015年财务个人工作总结范文
2015/05/22 职场文书
大学生志愿者心得体会
2016/01/15 职场文书
golang通过递归遍历生成树状结构的操作
2021/04/28 Golang