vue slot与传参实例代码讲解


Posted in Javascript onApril 28, 2019

插槽分为默认插槽和具名插槽:

默认插槽: 

//父组件
<div>
  <h3>父组件</h3>
  <testChild>
   <div>默认插槽</div>
  </testChild>
</div>

//子组件
<div>
 <h4>子组件</h4>
 <slot></slot>
</div>

vue slot与传参实例代码讲解

具名插槽:

  注意:具名插槽需要包裹在  template  标签中,否则会报错

//父组件
<div>
  <h3>父组件</h3>
  <testChild>
   <template v-slot:test>//v-slot: + 插槽名
    <ul>
     <li v-for="item in list">{{item.name}}</li>
    </ul>
   </template>
  </testChild>
 </div>
//子组件
 <div>
  <h4>子组件</h4>
  <slot name="test"></slot> //name="插槽名"
 </div>

vue slot与传参实例代码讲解

子组件向父组件传参:

//父组件 
 <div>
  <h3>父组件</h3>
  <testChild>
   <template v-slot:test="data">//具名插槽,v-slot: +插槽名+ ="自定义数据名",子组件所传参数都是其属性
    <ul>
     <li v-for="item in data.list2">{{item.name}}</li>
    </ul>
   </template>
   <template v-slot="dataDefalut">//默认插槽
    {{dataDefalut.sName}}
   </template>
  </testChild>
 </div>

//子组件
<template>
 <div>
  <h4>子组件</h4>
  <slot name="test" :list2="list2"></slot>
  <slot :sName="name"></slot>
 </div>
</template>
<script>
 export default {
  name: "testChild",
  data(){
   return {
    list2:[
     {name:'ccc'},
     {name:'ddd'}
    ],
    name:'name'
   }
  }
 }
</script>

结果:

vue slot与传参实例代码讲解

补充:vue 利用slot向父组件传值

闲话不多说,上代码

子组件,里面有slot插槽,并在slot上绑定了text值

<template>
 <div @click="$emit('change',checked+1)">
  <slot name="icon" :text="text"></slot>
 </div>
</template>
<script>
 export default{
  data(){
   return {
    text:"我是子组件"
   }
  },
  props:["checked"],
  model:{
   prop: 'checked',
   event: 'change'
  }
 }
</script>

父组件通过slot-scope就可以拿到子组件slot上绑定的值,并且2.5.0版本可以用于任意元素上

<template>
 <div id="app">
  <img src="./assets/logo.png">
  <!--<router-view/>-->
  <car v-model="index">
   <div slot="icon" slot-scope="props">
    {{props.text}}
   </div>
  </car>
 </div>
</template>

这样,就可以拿到子组件里面的text值。

总结

以上所述是小编给大家介绍的vue slot与传参实例代码讲解,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
jQuery学习笔记 操作jQuery对象 CSS处理
Sep 19 Javascript
JavaScript 反科里化 this [译]
Sep 20 Javascript
JQuery的read函数与js的onload不同方式实现
Mar 18 Javascript
jQuery选择器简明总结(含用法实例,一目了然)
Apr 25 Javascript
简化版手机端照片预览组件
Apr 13 Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
Aug 13 Javascript
JavaScript数组和对象的复制
Mar 21 Javascript
浅谈React Native Flexbox布局(小结)
Jan 08 Javascript
对Vue beforeRouteEnter 的next执行时机详解
Aug 25 Javascript
三种方式清除vue路由跳转router-link的历史记录
Apr 10 Vue.js
分享一个vue实现的记事本功能案例
Apr 11 Vue.js
详细介绍Next.js脚手架完整搭建封装
Apr 26 Javascript
Vue项目从webpack3.x升级webpack4不完全指南
Apr 28 #Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 #jQuery
vue项目中在外部js文件中直接调用vue实例的方法比如说this
Apr 28 #Javascript
微信小程序--特定区域滚动到顶部时固定的方法
Apr 28 #Javascript
详解vue更改头像功能实现
Apr 28 #Javascript
Vue2(三)实现子菜单展开收缩,带动画效果实现方法
Apr 28 #Javascript
js+html5 canvas实现ps钢笔抠图
Apr 28 #Javascript
You might like
DC动漫人物排行
2020/03/03 欧美动漫
如何在PHP程序中防止盗链
2008/04/09 PHP
PHP中应该避免使用同名变量(拆分临时变量)
2015/04/03 PHP
php+MySql实现登录系统与输出浏览者信息功能
2016/07/01 PHP
php安装php_rar扩展实现rar文件读取和解压的方法
2016/11/17 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
2017/01/19 PHP
php strftime函数的详细用法
2018/06/21 PHP
laravel withCount 统计关联数量的方法
2019/10/10 PHP
Avengerls vs KG BO3 第一场2.18
2021/03/10 DOTA
JS 按钮点击触发(兼容IE、火狐)
2013/08/07 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
JavaScript实现的一个计算数字步数的算法分享
2014/12/06 Javascript
javascript显式类型转换实例分析
2015/04/25 Javascript
javascript实现点击商品列表checkbox实时统计金额的方法
2015/05/15 Javascript
[原创]JS基于FileSaver.js插件实现文件保存功能示例
2016/12/08 Javascript
原生js jquery ajax请求以及jsonp的调用方法
2017/08/04 jQuery
浅析vue-router jquery和params传参(接收参数)$router $route的区别
2018/08/03 jQuery
Node.js安装详细步骤教程(Windows版)详解
2019/09/01 Javascript
JS实现的雪花飘落特效示例
2019/12/03 Javascript
解决vue初始化项目一直停在downloading template的问题
2020/11/09 Javascript
vuex的数据渲染与修改浅析
2020/11/26 Vue.js
[02:57]DOTA2亚洲邀请赛小组赛第四日 赛事回顾
2015/02/02 DOTA
浅谈Python中的全局锁(GIL)问题
2019/01/11 Python
Python提取频域特征知识点浅析
2019/03/04 Python
css3绘制百度的小度熊
2018/10/29 HTML / CSS
html5视频播放_动力节点Java学院整理
2017/07/13 HTML / CSS
德国网上超市:myTime.de
2019/08/26 全球购物
过滤器的用法
2013/10/08 面试题
小学生红领巾广播稿
2014/01/21 职场文书
公休请假条
2014/04/11 职场文书
乡镇领导干部个人对照检查材料思想汇报
2014/09/23 职场文书
后勤工作个人总结
2015/02/28 职场文书
2015政治思想表现评语
2015/03/25 职场文书
中国式结婚:司仪主持词(范文)
2019/07/25 职场文书
python基础之停用词过滤详解
2021/04/21 Python
Python实战之实现简易的学生选课系统
2021/05/25 Python