vue学习笔记之slot插槽基本用法实例分析


Posted in Javascript onFebruary 01, 2020

本文实例讲述了vue学习笔记之slot插槽基本用法。分享给大家供大家参考,具体如下:

不使用插槽,在template中用v-html解析父组件传来的带有标签的content

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
  <child content="<p>Rachel</p>"></child>
</div>
</body>
</html>
<script>
  Vue.component('child', {
    props: ['content'],
    template: '<div>
            <p>hello</p>
            <div v-html="this.content"></div>
          </div>'
  })
  var vm = new Vue({
    el: '#app'
  })
</script>

使用插槽,如果父组件为空,就会显示slot中定义的默认内容

<child>
  <p>Rachel</p>
</child>
Vue.component('child', {
   template: '<div>
          <p>hello</p>
          <slot>默认内容</slot>
        </div>'
})

使用插槽添加header和footer,使用‘具名插槽',也就是给插槽起个名字,各找各的位置。此处也可以写默认值,如果父组件没有对应的插槽内容的话,会显示子组件定义的插槽的默认值。

<div id="app">
  <body-content>
    <div class="header" slot="header">header</div>
    <div class="footer" slot="footer">footer</div>
  </body-content>
</div>
Vue.component('body-content', {
  template: '<div>
         <slot name="header">default header</slot>
         <div class="content">content</div>
         <slot name="footer">default footer</slot>
        </div>'
})

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
javascript XMLHttpRequest对象全面剖析
Apr 24 Javascript
通过Javascript创建一个选择文件的对话框代码
Jun 16 Javascript
js自定义事件及事件交互原理概述(二)
Feb 01 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
Jul 18 Javascript
php常见的页面跳转方法汇总
Apr 15 Javascript
使用Browserify配合jQuery进行编程的超级指南
Jul 28 Javascript
js实现简易垂直滚动条
Feb 22 Javascript
vue页面跳转后返回原页面初始位置方法
Feb 11 Javascript
vue3.0 CLI - 2.1 -  component 组件入门教程
Sep 14 Javascript
微信小程序仿今日头条导航栏滚动解析
Aug 20 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
Nov 01 Javascript
vue-cli设置publicPath小记
Apr 14 Javascript
vue学习笔记之作用域插槽实例分析
Feb 01 #Javascript
vue子组件改变父组件传递的prop值通过sync实现数据双向绑定(DEMO)
Feb 01 #Javascript
Jquery Datatables的使用详解
Jan 30 #jQuery
jQuery Datatables 动态列+跨列合并实现代码
Jan 30 #jQuery
js页面加载后执行的几种方式小结
Jan 30 #Javascript
javascript设计模式之装饰者模式
Jan 30 #Javascript
原生js+ajax分页组件
Jan 30 #Javascript
You might like
关于PHP模板Smarty的初级使用方法以及心得分享
2013/06/21 PHP
Yii2压缩PHP中模板代码的输出问题
2018/08/28 PHP
js正确获取元素样式详解
2009/08/07 Javascript
jQuery bind事件使用详解
2011/05/05 Javascript
javascript中自定义对象的属性方法分享
2013/07/12 Javascript
jquery+php实现搜索框自动提示
2014/11/28 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
JavaScript DOM 对象深入了解
2016/07/20 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
web前端开发中常见的多列布局解决方案整理(一定要看)
2017/10/15 Javascript
Angular4集成ng2-file-upload的上传组件
2018/03/14 Javascript
nodejs用gulp管理前端文件方法
2018/06/24 NodeJs
解决layui 表单元素radio不显示渲染的问题
2019/09/04 Javascript
微信小程序 导入图标实现过程详解
2019/10/11 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
jquery实现抽奖功能
2020/10/22 jQuery
Vue2.0 ES6语法降级ES5的操作
2020/10/30 Javascript
[02:52]DOTA2新手基础教程 米波
2014/01/21 DOTA
[49:41]NB vs NAVI Supermajor小组赛A组 BO3 第一场 6.2
2018/06/03 DOTA
[01:10:49]Secret vs VGJ.S 2018国际邀请赛淘汰赛BO3 第二场 8.24
2018/08/25 DOTA
使用Python的Treq on Twisted来进行HTTP压力测试
2015/04/16 Python
pandas 读取各种格式文件的方法
2018/06/22 Python
浅谈python requests 的put, post 请求参数的问题
2019/01/02 Python
python3正则提取字符串里的中文实例
2019/01/31 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
Python实现CNN的多通道输入实例
2020/01/17 Python
keras K.function获取某层的输出操作
2020/06/29 Python
Ralph Lauren意大利官方网站:时尚界最负盛名的品牌之一
2018/10/18 全球购物
泰国王权免税店官方网站:KingPower
2019/03/11 全球购物
化学教师自荐信范文
2013/12/28 职场文书
感恩节活动策划方案
2014/05/16 职场文书
创新社会管理心得体会
2014/09/12 职场文书
工作调动申请报告
2015/05/18 职场文书
一篇带你入门Java垃圾回收器
2021/06/16 Java/Android
MySQL选择合适的备份策略和备份工具
2022/06/01 MySQL