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 相关文章推荐
Ucren Virtual Desktop V2.0
Nov 07 Javascript
dwr spring的集成实现代码
Mar 22 Javascript
几种设置表单元素中文本输入框不可编辑的方法总结
Nov 25 Javascript
Javascript基础知识(一)核心基础语法与事件模型
Sep 29 Javascript
Bootstrap源码解读媒体对象、列表组和面板(10)
Dec 26 Javascript
webpack配置的最佳实践分享
Apr 21 Javascript
Angular 4依赖注入学习教程之InjectToken的使用(八)
Jun 04 Javascript
Vue3.0数据响应式原理详解
Oct 09 Javascript
javascript 数组精简技巧小结
Feb 26 Javascript
Vue+ElementUI 中级联选择器Bug问题的解决
Jul 31 Javascript
Vue过滤器(filter)实现及应用场景详解
Jun 15 Vue.js
Vue全局事件总线你了解吗
Feb 24 Vue.js
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
php利用curl抓取新浪微博内容示例
2014/04/27 PHP
摘自织梦CMS中的图片处理类
2015/08/08 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
DOM和XMLHttpRequest对象的属性和方法整理
2012/01/04 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
jquery Easyui快速开发总结
2015/08/20 Javascript
详解JavaScript中的4种类型识别方法
2015/09/14 Javascript
谈一谈jQuery核心架构设计
2016/03/28 Javascript
从0开始学Vue
2016/10/27 Javascript
用React实现一个完整的TodoList的示例代码
2017/10/30 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
React中this丢失的四种解决方法
2019/03/12 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
vue实现简单全选和反选功能
2020/09/15 Javascript
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
Python实现屏幕截图的代码及函数详解
2016/10/01 Python
Python os.rename() 重命名目录和文件的示例
2018/10/25 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
使用python list 查找所有匹配元素的位置实例
2019/06/11 Python
python多进程并发demo实例解析
2019/12/13 Python
Python如何获取Win7,Win10系统缩放大小
2020/01/10 Python
django中的数据库迁移的实现
2020/03/16 Python
Python爬虫工具requests-html使用解析
2020/04/29 Python
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
台湾线上百货零售购物平台:friDay购物
2017/08/18 全球购物
英文自荐信格式
2013/11/28 职场文书
大学生的网络创业计划书
2013/12/26 职场文书
实习鉴定评语
2014/01/19 职场文书
寄语学生的话
2014/04/10 职场文书
学习党的群众路线剖析材料
2014/10/09 职场文书
沈阳故宫导游词
2015/01/31 职场文书
辞职书格式样本
2015/02/26 职场文书
2015年消防工作总结
2015/04/24 职场文书
python非标准时间的转换
2021/07/25 Python
div与span之间的区别与使用介绍
2021/12/06 HTML / CSS
Python内置包对JSON文件数据进行编码和解码
2022/04/12 Python