Vue.js中组件中的slot实例详解


Posted in Javascript onJuly 17, 2017

Vue组件中的slot

slot 可以实现在已经定义的组件中添加内容,组件会接收内容并输出,假如有一个组件person,它的里面包含的是个人信息,如下面这样

<template id="per">
    <div>
      <p>姓名:...</p>
      <p>年龄:...</p>
      <p>职业:...</p>
    </div>
  </template>

在应用的时候,当然希望这里面可以是灵活变化的,所以这就需要用到slot了

首先要做的事情就是创建这样一个组件,这里我采用的是<template>的形式,如下面这样

<template id="per">
    <div>
      <p>姓名:</p>
      <p>年龄:</p>
      <p>职业:</p>
    </div>
  </template>

可以看到我这里给template添加了id,这个是为了后面的操作

下面使用Vue的构造器,创建Vue实例,然后添加局部的组件,如下面这样

var person = {
     template : "#per"  //利用id
    };
    new Vue({
      el: "#app",
      data: {
        componentData: {
          name : "vam",
          age : 18,
          job : "student"
        }
      },
      components : {
        "person" : person
      }
    });

接下来就是要在<person> 组件使用的时候添加点东西,就是具体内容,下面这样:

<div id="app">
    <person>
      <span slot="name">{{componentData.name}}</span>
      <span slot="age">{{componentData.age}}</span>
      <span slot="job">{{componentData.job}}</span>
    </person>
  </div>

当然这样还是不够的,总得在模板中有点什么吧,如下,这里就该用到slot了  

<template id="per">
    <div>
      <p>姓名:<slot name="name"></slot></p>
      <p>年龄:<slot name="age"></slot></p>
      <p>职业:<slot name="job"></slot></p>
    </div>
  </template>

之后就可以看到想要的结果了

以上就是Vue.js中组件中的slot实例的讲解,大家如果有疑问请留言讨论,共同进步,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
js 火狐下取本地路径实现思路
Apr 02 Javascript
网页右侧悬浮滚动在线qq客服代码示例
Apr 28 Javascript
html的DOM中Event对象onabort事件用法实例
Jan 21 Javascript
js日期范围初始化得到前一个月日期的方法
May 05 Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
Jul 18 Javascript
js代码实现无缝滚动(文字和图片)
Aug 20 Javascript
JavaScript使用DeviceOne开发实战(二) 生成调试安装包
Dec 01 Javascript
js点击任意区域弹出层消失实现代码
Dec 27 Javascript
javascript实现秒表计时器的制作方法
Feb 16 Javascript
Bootstrap Table中的多选框删除功能
Jul 15 Javascript
从vue源码解析Vue.set()和this.$set()
Aug 30 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
Sep 03 jQuery
Vue.js上下滚动加载组件的实例代码
Jul 17 #Javascript
JS实现仿UC浏览器前进后退效果的实例代码
Jul 17 #Javascript
详解利用jsx写vue组件的方法示例
Jul 17 #Javascript
Javascript实现找不同色块的游戏
Jul 17 #Javascript
Vue.js 单页面多路由区域操作的实例详解
Jul 17 #Javascript
Vue项目webpack打包部署到服务器的实例详解
Jul 17 #Javascript
JS中Safari浏览器中的Date
Jul 17 #Javascript
You might like
CodeIgniter配置之SESSION用法实例分析
2016/01/19 PHP
基于Laravel-admin 后台的自定义页面用法详解
2019/09/30 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
JS控件autocomplete 0.11演示及下载 1月5日已更新
2007/01/09 Javascript
一份老外写的XMLHttpRequest代码多浏览器支持兼容性
2007/01/11 Javascript
使用Jquery实现每日签到功能
2015/04/03 Javascript
JavaScript模仿Pinterest实现图片预加载功能
2016/10/25 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
vue 简单自动补全的输入框的示例
2018/03/12 Javascript
Layui 设置select下拉框自动选中某项的方法
2018/08/14 Javascript
vue项目在安卓低版本机显示空白的原因分析(两种)
2018/09/04 Javascript
微信小程序授权登录及解密unionId出错的方法
2018/09/26 Javascript
vue-cli3 karma单元测试的实现
2019/01/18 Javascript
JS学习笔记之闭包小案例分析
2019/05/29 Javascript
详解基于原生JS验证表单组件xy-form
2019/08/20 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
Python的函数嵌套的使用方法
2014/01/24 Python
详解Python中类的定义与使用
2017/04/11 Python
matplotlib绘图实例演示标记路径
2018/01/23 Python
深入分析python中整型不会溢出问题
2018/06/18 Python
利用Pyhton中的requests包进行网页访问测试的方法
2018/12/26 Python
解决django服务器重启端口被占用的问题
2019/07/26 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
2020/01/03 Python
Pandas对DataFrame单列/多列进行运算(map, apply, transform, agg)
2020/06/14 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
美国打印机墨水和碳粉购物网站:QuikShip Toner
2018/08/29 全球购物
时尚圣经:The Fashion Bible
2019/03/03 全球购物
注塑工厂厂长岗位职责
2013/12/02 职场文书
接受捐赠答谢词
2014/01/27 职场文书
鼓舞士气的口号
2014/06/16 职场文书
学年个人总结范文
2015/03/05 职场文书
2016年感恩节活动总结大全
2016/04/01 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL
Java中常用解析工具jackson及fastjson的使用
2021/06/28 Java/Android
MySQL基于索引的压力测试的实现
2021/11/07 MySQL