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 相关文章推荐
ext checkboxgroup 回填数据解决
Aug 21 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
Apr 08 Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
May 08 Javascript
php is_numberic函数造成的SQL注入漏洞
Mar 10 Javascript
js 针对html DOM元素操作等经验累积
Mar 11 Javascript
详解JavaScript设计模式开发中的桥接模式使用
May 18 Javascript
JS for循环中i++ 和 ++i的区别介绍
Jul 20 Javascript
详解JavaScript树结构
Jan 09 Javascript
ionic2中使用自动生成器的方法
Mar 04 Javascript
vue2 拖动排序 vuedraggable组件的实现
Aug 08 Javascript
Vue实现开心消消乐游戏算法
Oct 22 Javascript
Vue 实现html中根据类型显示内容
Oct 28 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
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
php Notice: Undefined index 错误提示解决方法
2010/08/29 PHP
从零开始学YII2框架(一)通过Composer安装Yii2框架
2014/08/20 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
详解如何实现Laravel的服务容器的方法示例
2019/04/15 PHP
强悍无比的WEB开发好助手FireBug(Firefox Plugin)
2007/01/16 Javascript
JS获取scrollHeight问题想到的标准问题
2007/05/27 Javascript
基于JQuery的多标签实现代码
2012/09/19 Javascript
PHP实现的各种中文编码转换类分享
2015/01/23 Javascript
nodeJS代码实现计算交社保是否合适
2015/03/09 NodeJs
jquery限定文本框只能输入数字(整数和小数)
2016/01/08 Javascript
JS 实现倒计时数字时钟效果【附实例代码】
2016/03/30 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
vue组件编写之todolist组件实例详解
2018/01/22 Javascript
Vue中的基础过渡动画及实现原理解析
2018/12/04 Javascript
微信小程序实现点击按钮后修改颜色
2019/12/05 Javascript
python reduce 函数使用详解
2017/12/05 Python
Python爬虫设置代理IP的方法(爬虫技巧)
2018/03/04 Python
python实现简单聊天室功能 可以私聊
2019/07/12 Python
详解用python生成随机数的几种方法
2019/08/04 Python
利用python计算时间差(返回天数)
2019/09/07 Python
使用Python串口实时显示数据并绘图的例子
2019/12/26 Python
Python发送手机动态验证码代码实例
2020/02/28 Python
Python如何用filter函数筛选数据
2020/03/05 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
使用css3制作登录表单的步骤
2014/04/07 HTML / CSS
婚鞋、新娘鞋、礼服鞋、童鞋:Nina Shoes
2019/09/04 全球购物
同步和异步有何异同,在什么情况下分别使用他们?举例说明
2014/02/27 面试题
一套带网友答案的.NET笔试题
2016/12/06 面试题
股东合作协议书
2014/04/14 职场文书
贫困证明模板(3篇)
2014/09/16 职场文书
2014年基建工作总结
2014/12/12 职场文书
自主招生自荐信格式范文
2015/03/25 职场文书
幼儿园亲子活动通知
2015/04/24 职场文书
幼儿园中班教学反思
2016/03/03 职场文书
详解Python内置模块Collections
2022/03/22 Python