发布时间:2022-12-09 文章分类:WEB开发 投稿人:樱花 字号: 默认 | | 超大 打印

子组件使用this.$emit()向父组件传值

首先必须在父组件中引用子组件,然后实现传值

第一步 在父组件中引入子组件

使用import引入组件

import indexImportOrder from './components/indexImportOrder'

声明

//定义组件
components:{
indexImportOrder,
},

使用

<indexImportOrder ref="indexImportOrder"/>

第二步 子组件向父组件传值

1. 在子组件中需要向父组件传值处使用this.$emit("function",param); //其中function为父组件定义函数,param为需要传递参数

//新订单页面跳转
viewBusiness(){
let flag = false;
this.$emit('closeMain',flag);
},

2. 在父组件中子组件引用处添加函数v-on:function="function1";//其中function为子组件中定义函数,function1为父组件定义函数--用于接收子组件传值并进行相应数据处理,可定义为同一名称

v-on: 可用 @ 代替@function="function1" ,@ 为 v-on:的简写

<indexImportOrder ref="indexImportOrder" v-on:closeMain="closeMain"/>

val及为子组件中flag,即接收的子组件参数

closeMain(val){
this.flag = val;
},

更详细解释可参照:https://www.jb51.net/article/114907.htm

到此这篇关于Vue this.$emit()方法通过子组件向父组件传值的文章就介绍到这了,更多相关vue子组件向父组件传值内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!