VUE子组件向父组件传值详解(含传多值及添加额外参数场景)


Posted in Javascript onSeptember 01, 2020

一、子组件向父组件传递一个值

子组件:

this.$emit('change', this.value);

父组件:

<!-- 在父组件中使用子组件 -->
<editable-cell :text="text" :inputType="inputType" @change="costPlannedAmountChange($event)" />
// 事件处理函数
async costPlannedAmountChange(value) {
	console.log(value)
}

在使用子组件时,绑定change函数的事件处理函数也可以写成如下格式:

<editable-cell :text="text" :inputType="inputType" @change="costPlannedAmountChange" />

绑定事件处理函数时,可以不带括号,形参则默认为事件对象,如果绑定时带上了括号,再想使用事件对象则需要传入$event作为实参。

二、子组件向父组件传递一个值,并携带额外参数

record为额外参数( 本文的额外参数都拿record做举例 )。

子组件:

this.$emit('change', this.value);

父组件:

<!-- 插槽 -->
<template slot="planned_amount" slot-scope="text, record">
 <!-- 在父组件中使用子组件 -->
 <editable-cell :text="text" :inputType="inputType" @change="costPlannedAmountChange(record,$event)" />
</template>
// 事件处理函数
async costPlannedAmountChange(record,value) {
 console.log(record,value)
},

绑定事件处理函数时,record和$event的顺序不做要求,但是按照vue事件绑定的习惯,$event通常放在实参列表末尾。

三、子组件向父组件传递多个值

子组件:

// 向父组件传递了两个值
this.$emit('change', this.value,this.text);

父组件:

<editable-cell :text="text" :inputType="inputType" @change="costPlannedAmountChange" />
// 事件处理函数
async costPlannedAmountChange(param1,param2) {
  console.log(param1,param2)
},

绑定事件处理函数时,不能携带括号!!!如果携带括号并且在括号内加了$event,只能拿到子组件传递过来的第一个参数。

四、子组件向父组件传递多个值,并携带额外参数

record为额外参数( 本文的额外参数都拿record做举例 )。

子组件:

// 向父组件传递了两个值
this.$emit('change', this.value,this.text);

父组件:

<template slot="planned_amount" slot-scope="text, record">
 <!-- 在父组件中使用子组件 -->
  <editable-cell :text="text" :inputType="inputType" @change="costPlannedAmountChange(record,arguments)" />
</template>
// 事件处理函数
async costPlannedAmountChange(record,args) {
  console.log(record,args)
},

arguments是方法绑定中的一个关键字,内部包括了所有方法触发时传递过来的实参。arguments和额外参数的位置谁先谁后不做要求,建议arguments放后面。

查看args的打印结果:

VUE子组件向父组件传值详解(含传多值及添加额外参数场景)

总结

到此这篇关于VUE子组件向父组件传值(含传多值及添加额外参数场景)的文章就介绍到这了,更多相关VUE子组件向父组件传值内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
才发现的超链接js导致网页中GIF动画停止的解决方法
Nov 02 Javascript
json数据处理技巧(字段带空格、增加字段、排序等等)
Jun 14 Javascript
JavaScript实现找质数代码分享
Mar 24 Javascript
Vue.js实现简单动态数据处理
Feb 13 Javascript
BootStrap 页签切换失效的解决方法
Aug 17 Javascript
利用Three.js如何实现阴影效果实例代码
Sep 26 Javascript
利用nginx + node在阿里云部署https的步骤详解
Dec 19 Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
Feb 08 Javascript
JS实现li标签的删除
Apr 12 Javascript
vue下axios拦截器token刷新机制的实例代码
Jan 17 Javascript
Node登录权限验证token验证实现的方法示例
May 25 Javascript
在Vue 中获取下拉框的文本及选项值操作
Aug 13 Javascript
vue离开当前页面触发的函数代码
Sep 01 #Javascript
Vue 实现监听窗口关闭事件,并在窗口关闭前发送请求
Sep 01 #Javascript
Node.js web 应用如何封装到Docker容器中
Sep 01 #Javascript
Vue中关闭弹窗组件时销毁并隐藏操作
Sep 01 #Javascript
Vue 使用typescript如何优雅的调用swagger API
Sep 01 #Javascript
vue路由切换时取消之前的所有请求操作
Sep 01 #Javascript
jQuery实现动态加载瀑布流
Sep 01 #jQuery
You might like
ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
2014/06/19 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
TP5框架请求响应参数实例分析
2019/10/17 PHP
微信小程序发送订阅消息的方法(php 为例)
2019/10/30 PHP
PHP cookie与session会话基本用法实例分析
2019/11/18 PHP
javascript当onmousedown、onmouseup、onclick同时应用于同一个标签节点Element
2010/01/05 Javascript
基于OO的动画附加插件,可以实现弹跳、渐隐等动画效果 分享
2013/06/24 Javascript
jquery专业的导航菜单特效代码分享
2015/08/29 Javascript
Bootstrap表单控件学习使用
2017/03/07 Javascript
Angular实现一个简单的多选复选框的弹出框指令实例
2017/04/25 Javascript
vue使用技巧及vue项目中遇到的问题
2018/06/04 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
vue项目中axios请求网络接口封装的示例代码
2018/12/18 Javascript
详解JS浏览器事件循环机制
2019/03/27 Javascript
[59:26]DOTA2上海特级锦标赛D组资格赛#1 EG VS VP第二局
2016/02/28 DOTA
Python enumerate遍历数组示例应用
2008/09/06 Python
Python中为feedparser设置超时时间避免堵塞
2014/09/28 Python
Python中for循环控制语句用法实例
2015/06/02 Python
python下os模块强大的重命名方法renames详解
2017/03/07 Python
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
2018/08/30 Python
在Python中定义一个常量的方法
2018/11/10 Python
Pycharm取消py脚本中SQL识别的方法
2018/11/29 Python
PyQt4编程之让状态栏显示信息的方法
2019/06/18 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
CSS3简单实现照片墙
2014/12/12 HTML / CSS
英国工具中心:UK Tool Centre
2017/07/10 全球购物
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
介绍一下Linux中的链接
2016/06/05 面试题
控制工程专业个人求职信
2013/09/25 职场文书
数控专业个人求职信范例
2013/11/29 职场文书
自我评价格式
2014/01/06 职场文书
简历中自我评价怎么写
2014/02/12 职场文书
李培根演讲稿
2014/05/22 职场文书
国家助学贷款承诺书
2015/04/30 职场文书
配置nginx 重定向到系统维护页面
2021/06/08 Servers