Vue作用域插槽实现方法及作用详解


Posted in Javascript onJuly 08, 2020

默认插槽和具名插槽的概念比较好理解,这里主要以官方文档的案例来讲解一下作用域插槽。

首先是有一个currentUser的组件:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div id="app">
    <current-user>
      {{ user.firstName }}
    </current-user>
  </div>
  <script src="vue.min.js"></script>
  <script>
    Vue.component('currentUser', {
      template: `
        <span>
          <slot>{{ user.lastName }}</slot>
        </span>
      `,
      data() {
        return {
          user: {
            firstName: 'w',
            lastName: 'ts'
          }
        }
      }
    })

    new Vue({
      el: '#app'
    })
  </script>
</body>
</html>

然而该页面无法正常工作,因为只有currentUser可以访问到user,出错的地方在这里:

Vue作用域插槽实现方法及作用详解

然后,引入一个插槽prop:

<span>
  <slot :user="user">
    {{ user.lastName }}
  </slot>
</span>

接着,需要给v-slot带一个值来定义我们提供的插槽 prop 的名字:

<current-user>
  <template v-slot="wts">
    {{ wts.user.firstName }}
  </template>
</current-user>

简单的讲作用域插槽就是让插槽内容能够访问子组件中才有的数据,修改后便可以正常工作了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery动画效果实现图片无缝连续滚动
Jan 12 Javascript
动态加载js文件简单示例
Apr 21 Javascript
AngularJs ng-repeat 嵌套如何获取外层$index
Sep 21 Javascript
详解vue-validator(vue验证器)
Jan 16 Javascript
基于JS实现9种不同的面包屑和分布式多步骤导航效果
Feb 21 Javascript
微信小程序多列选择器range-key使用详解
Mar 30 Javascript
浅谈Vuex的状态管理(全家桶)
Nov 04 Javascript
vue2.0 + ele的循环表单及验证字段方法
Sep 18 Javascript
微信公众号H5支付接口调用方法
Jan 10 Javascript
Vue.js的模板语法详解
Feb 16 Javascript
Node.js中出现未捕获异常的处理方法
Jun 29 Javascript
微信小程序实现自定义底部导航
Nov 18 Javascript
Vue Render函数创建DOM节点代码实例
Jul 08 #Javascript
实例讲解React 组件生命周期
Jul 08 #Javascript
详细分析React 表单与事件
Jul 08 #Javascript
详解JavaScript之ES5的继承
Jul 08 #Javascript
jQuery使用jsonp实现百度搜索的示例代码
Jul 08 #jQuery
微信小程序拖拽排序列表的示例代码
Jul 08 #Javascript
基于javascript canvas实现五子棋游戏
Jul 08 #Javascript
You might like
利用php_imagick实现复古效果的方法
2016/10/18 PHP
Laravel5.1 框架数据库操作DB运行原生SQL的方法分析
2020/01/07 PHP
JavaScript 嵌套函数指向this对象错误的解决方法
2010/03/15 Javascript
jquery获取节点名称
2015/04/26 Javascript
JavaScript函数的调用以及参数传递
2015/10/21 Javascript
深入php面向对象、模式与实践
2016/02/16 Javascript
Bootstrap表格和栅格分页实例详解
2016/05/20 Javascript
不同js异步函数同步的实现方法
2016/05/28 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
2017/04/27 jQuery
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
JavaScript树的深度优先遍历和广度优先遍历算法示例
2018/07/30 Javascript
浅谈JS的原型和继承
2019/05/08 Javascript
vue项目中mock.js的使用及基本用法
2019/05/22 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
PHP魔术方法__ISSET、__UNSET使用实例
2014/11/25 Python
python写入中英文字符串到文件的方法
2015/05/06 Python
Python解析命令行读取参数--argparse模块使用方法
2018/01/23 Python
1分钟快速生成用于网页内容提取的xslt
2018/02/23 Python
Windows 64位下python3安装nltk模块
2018/09/19 Python
Python 安装第三方库 pip install 安装慢安装不上的解决办法
2019/06/18 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
python3+opencv生成不规则黑白mask实例
2020/02/19 Python
PyCharm 光标变成黑块的解决方式
2021/02/06 Python
weblogic面试题
2016/03/07 面试题
这76道Java面试题及答案,祝你能成功通过面试
2016/04/16 面试题
自我鉴定书
2014/03/24 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
明星邀请函
2015/02/02 职场文书
部门经理助理岗位职责
2015/04/13 职场文书
质量承诺书格式范文
2015/04/28 职场文书
经营场所证明范本
2015/06/19 职场文书
Nginx配置https原理及实现过程详解
2021/03/31 Servers
golang特有程序结构入门教程
2021/06/02 Python
什么是动态刷新率DRR? Windows11动态刷新率功能介绍
2021/11/21 数码科技