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 20 Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
Sep 30 Javascript
利用CSS3在Angular中实现动画
Jan 15 Javascript
jQuery AjaxUpload 上传图片代码
Feb 02 Javascript
JavaScript 限制文本框不可输入英文单双引号的方法
Dec 20 Javascript
使用vue框架 Ajax获取数据列表并用BootStrap显示出来
Apr 24 Javascript
js字符串与Unicode编码互相转换
May 17 Javascript
AngularJS日程表案例详解
Aug 15 Javascript
Vue.js实现分页查询功能
Nov 15 Javascript
深入理解vue中slot与slot-scope的具体使用
Jan 26 Javascript
Node.js中,在cmd界面,进入退出Node.js运行环境的方法
May 12 Javascript
js实现筛选功能
Nov 24 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
刚才在简化php的库,结果发现很多东西
2006/12/31 PHP
php 时间计算问题小结
2009/01/04 PHP
ThinkPHP惯例配置文件详解
2014/07/14 PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
2014/09/29 PHP
php使用MySQL保存session会话的方法
2015/06/26 PHP
PHP进程通信基础之信号
2017/02/19 PHP
PHP使用DOM对XML解析处理操作示例
2019/07/04 PHP
Jquery升级新版本后选择器的语法问题
2010/06/02 Javascript
jquery判断元素是否隐藏的多种方法
2014/05/06 Javascript
js实现的四级左侧网站分类菜单实例
2015/05/06 Javascript
javascript带回调函数的异步脚本载入方法实例分析
2015/07/02 Javascript
Bootstrap媒体对象学习使用
2017/03/07 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
JS获取并处理php数组的方法实例分析
2018/09/04 Javascript
JavaScript查看代码运行效率console.time()与console.timeEnd()用法
2019/01/18 Javascript
解决Vue中使用keepAlive不缓存问题
2020/08/04 Javascript
JS PHP字符串截取函数实现原理解析
2020/08/29 Javascript
Python读写Redis数据库操作示例
2014/03/18 Python
python3.0 模拟用户登录,三次错误锁定的实例
2017/11/02 Python
Python错误处理操作示例
2018/07/18 Python
利用pyinstaller打包exe文件的基本教程
2019/05/02 Python
使用tensorboard可视化loss和acc的实例
2020/01/21 Python
已安装tensorflow-gpu,但keras无法使用GPU加速的解决
2020/02/07 Python
Python中pass的作用与使用教程
2020/11/13 Python
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
世界闻名的衬衫制造商:Savile Row Company
2018/07/30 全球购物
泰国Robinson百货官网:购买知名品牌的商品
2020/02/08 全球购物
大学生毕业自我鉴定范文
2013/09/19 职场文书
怎么写有吸引力的自荐信
2013/11/17 职场文书
超市中秋节促销方案
2014/03/21 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
小学教师先进事迹材料
2014/12/15 职场文书
卫生院艾滋病宣传活动总结
2015/05/09 职场文书
2016年元旦主持词
2015/07/06 职场文书
Python Numpy之linspace用法说明
2021/04/17 Python
Win11远程连接不上怎么办?Win11远程桌面用不了的解决方法
2022/08/05 数码科技