Vue匿名插槽与作用域插槽的合并和覆盖行为


Posted in Javascript onApril 22, 2019

Vue 测试版本:Vue.js v2.5.13

Vue 文档:

<slot> 元素可以用一个特殊的特性 name 来进一步配置如何分发内容。多个插槽可以有不同的名字。具名插槽将匹配内容片段中有对应 slot 特性的元素。

仍然可以有一个匿名插槽,它是默认插槽,作为找不到匹配的内容片段的备用插槽。

具体应用的时候:

1、匿名插槽的合并行为:

<div id="app">
    <myele>
      <div>
        default slot
      </div>
      <div>
        <div>from parent!</div>
        <div>from parent!</div>
      </div>
    </myele>
  </div>
window.onload = function() {
  Vue.component('myele', {
    template: `         
     <div>
     <slot></slot>
     </div>
    `
  }); 
  new Vue({
    el: '#app'
  });
};

效果:内容合并

Vue匿名插槽与作用域插槽的合并和覆盖行为

2、匿名作用域插槽的覆盖行为:

<div id="app">
    <myele>
      <div slot-scope="props">
        <div>from parent!</div>
        <div>from {{props.text}}</div>
      </div>
      <div slot-scope="prop">
        <div>from </div>
        <div>{{prop.text}}</div>
      </div>    
    </myele>
  </div>
window.onload = function() {
  Vue.component('myele', {
    template: `         
     <div>     
     <slot text="child"></slot>
     <slot text="child2"></slot>
//即使 text 和上一行一样,也不会报错,开发环境     </div>
    `
  }); 
  new Vue({
    el: '#app'
  });
};

效果:以靠后的作用域插槽模板为准,绘制了两遍;

Vue匿名插槽与作用域插槽的合并和覆盖行为

3、匿名插槽模板和作用域插槽模板混合:

<div id="app">
    <myele>
      <div>
        default slot
      </div>      
      <div slot-scope="props">
        <div>from parent!</div>
        <div>from {{props.text}}</div>
      </div>
    </myele>
  </div>
window.onload = function() {
  Vue.component('myele', {
    template: `         
     <div>     
     <slot></slot>
     <slot text="child"></slot>
     </div>
    `
  }); 
  new Vue({
    el: '#app'
  });
};

效果:匿名插槽以匿名作用域插槽模板为准进行渲染,即使你把匿名插槽模板放后面,也是一样的结果;

Vue匿名插槽与作用域插槽的合并和覆盖行为

由此可以看出,最好不要使用匿名、默认插槽,最好使用具名插槽,可以减少不确定性;

参考文档:

https://cn.vuejs.org/v2/guide/components.html#具名插槽

总结

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

Javascript 相关文章推荐
用CSS+JS实现的进度条效果效果
Jun 05 Javascript
JS 继承实例分析
Nov 04 Javascript
json字符串之间的相互转换示例代码
Aug 21 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
Sep 10 Javascript
Javascript动态创建表格及删除行列的方法
May 15 Javascript
jQuery Dialog对话框事件用法实例分析
May 10 Javascript
原生js实现焦点轮播图效果
Jan 12 Javascript
AngularJS使用ng-inlude指令加载页面失败的原因与解决方法
Jan 19 Javascript
前端框架学习总结之Angular、React与Vue的比较详解
Mar 14 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
Apr 23 Javascript
MvcPager分页控件 适用于Bootstrap
Jun 03 Javascript
p5.js入门教程之小球动画示例代码
Mar 15 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
说说如何利用 Node.js 代理解决跨域问题
Apr 22 #Javascript
详解Vue中使用Axios拦截器
Apr 22 #Javascript
You might like
神族 PROTOSS 概述
2020/03/14 星际争霸
PHP实现数组递归转义的方法
2014/08/28 PHP
PHP间隔一段时间执行代码的方法
2014/12/02 PHP
PHP面向对象之后期静态绑定功能介绍
2015/05/18 PHP
深入理解PHP 数组之count 函数
2016/06/13 PHP
JavaScript高级程序设计
2006/12/29 Javascript
Javascript面向对象之四 继承
2011/02/08 Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
2014/03/18 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
2015/01/28 Javascript
JavaScript中的getTime()方法使用详解
2015/06/10 Javascript
js clearInterval()方法的定义和用法
2015/11/11 Javascript
JavaScript SHA-256加密算法详细代码
2016/10/06 Javascript
JS取数字小数点后两位或n位的简单方法
2016/10/24 Javascript
基于jquery实现二级联动效果
2017/03/30 jQuery
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
JavaScript回调函数callback用法解析
2020/01/14 Javascript
使用npm命令提示: 'npm' 不是内部或外部命令,也不是可运行的程序的处理方法
2020/05/14 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
2020/08/14 Javascript
javascript实现拼图游戏
2021/01/29 Javascript
[01:33:30]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第二场 2月5日
2021/03/11 DOTA
在Python的web框架中配置app的教程
2015/04/30 Python
django的登录注册系统的示例代码
2018/05/14 Python
python中如何进行连乘计算
2020/05/28 Python
Hunter Boots美国官方网站:赫特威灵顿雨靴
2018/06/16 全球购物
应聘编辑自荐信范文
2014/03/12 职场文书
三八红旗手先进事迹材料
2014/05/13 职场文书
青安岗事迹材料
2014/05/14 职场文书
2013年最新自荐信范文
2014/06/23 职场文书
幼儿教师暑期培训方案
2014/08/27 职场文书
活动总结结尾怎么写
2014/08/30 职场文书
公务员四风问题对照检查材料整改措施
2014/09/26 职场文书
退税申请报告怎么写
2015/05/18 职场文书
火烧圆明园的观后感
2015/06/03 职场文书
2016年春季运动会通讯稿
2015/11/25 职场文书
Win11 Build 21996.1 Dev版怎么样? win11系统截图欣赏
2021/11/21 数码科技
java获取一个文本文件的编码(格式)信息
2022/09/23 Java/Android