Use $emit to pass multiple parameters in vue

1. $emit passes a parameter

Subassembly:

this.$emit('getData','111')

parent component:

<child @getData="getData"></child>
getData(data){
    
    
	console.log(data) // '111'
}

2. $emit passes multiple parameters

Method 1: Put the data to be passed into the object, and then pass the object to the parent component

Subassembly:

let obj = {
    
    
	data1: '111',
	data2: '222'
}
this.$emit('getData',obj)

parent component:

<child @getData="getData"></child>
getData(data){
    
    
	console.log(data) // {data1:'111',data2:'222'}
}

Method 2: Directly pass multiple parameters

Subassembly:

this.$emit('getData','111','222')

parent component:

Pass the arguments parameter when receiving

<child @getData="getData(arguments)"></child>
getData(data){
    
    
	console.log(data[0],data[1]) // '111' '222'
}

Guess you like

Origin blog.csdn.net/jiangjunyuan168/article/details/126635897