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数组特定索引处指定位置插入元素的技巧
Aug 24 Javascript
javascript匿名函数实例分析
Nov 18 Javascript
jQuery中find()方法用法实例
Jan 07 Javascript
jQuery实现联动下拉列表查询框
Jan 04 Javascript
动态加载css方法实现和深入解析
Jan 18 Javascript
BootStrap的双日历时间控件使用
Jul 25 Javascript
Bootstrap 模态框(Modal)带参数传值实例
Aug 20 Javascript
laydate日历控件使用方法详解
Nov 20 Javascript
通过cordova将vue项目打包为webapp的方法
Feb 02 Javascript
vue element 生成无线级左侧菜单的实现代码
Aug 21 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
Nov 25 Javascript
关于angular浏览器兼容性问题的解决方案
Jul 26 Javascript
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
超神学院:天使彦公认最美的三个视角,网友:我的天使快下凡吧!
2020/03/02 国漫
PHP GD库生成图像的几个函数总结
2014/11/19 PHP
php短网址和数字之间相互转换的方法
2015/03/13 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
2016/10/18 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
jQuery拖拽 &amp; 弹出层 介绍与示例
2013/12/27 Javascript
判断iframe里的页面是否加载完成
2014/06/06 Javascript
js实现select跳转菜单新窗口效果代码分享(超简单)
2015/08/21 Javascript
通过Tabs方法基于easyUI+bootstrap制作工作站
2016/03/28 Javascript
jQuery遍历DOM节点操作之filter()方法详解
2016/04/14 Javascript
js实现统计字符串中特定字符出现个数的方法
2016/08/02 Javascript
详解微信UnionID作用
2019/05/15 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
2020/04/20 Javascript
jQuery+Ajax+js实现请求json格式数据并渲染到html页面操作示例
2020/06/02 jQuery
微信小程序wx.getUserInfo授权获取用户信息(头像、昵称)的实现
2020/08/19 Javascript
[16:04]DOTA2海涛带你玩炸弹 9月5日更新内容详解
2014/09/05 DOTA
在Python的Flask框架中验证注册用户的Email的方法
2015/09/02 Python
python实现识别相似图片小结
2016/02/22 Python
Python实现读取Properties配置文件的方法
2018/03/29 Python
对python xlrd读取datetime类型数据的方法详解
2018/12/26 Python
python最小生成树kruskal与prim算法详解
2019/01/17 Python
python实现函数极小值
2019/07/10 Python
利用Python代码实现一键抠背景功能
2019/12/29 Python
python实现猜数游戏(保存游戏记录)
2020/06/22 Python
使用django自带的user做外键的方法
2020/11/30 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
介绍一些UNIX常用简单命令
2014/11/11 面试题
机电一体化专业应届本科生求职信
2013/09/27 职场文书
幸福家庭事迹材料
2014/02/03 职场文书
文明风采获奖感言
2014/02/18 职场文书
环保倡议书400字
2014/05/15 职场文书
2014镇副书记群众路线专题民主生活会思想汇报
2014/09/23 职场文书
小爸爸观后感
2015/06/15 职场文书
2019年教师节祝福语精选,给老师送上真诚的祝福
2019/09/09 职场文书
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python
css让页脚保持在底部位置的四种方案
2022/07/23 HTML / CSS