- 父組件傳值子組件 如下栗子
specialModuleList
父組件code
<ImageCard @changeImageItem="changeImageItem" :specialModuleList="formData.specialModuleList[index]"></ImageCard>
子組件code
props: {
specialModuleList: {
type: Object,
default: function(){
return {}
}
},
},
- 子組件傳值父組件
子組件傳值code
changeItem(){
this.$emit('changeImageItem',specialModuleList);
},
父組件接收code
changeImageItem(val){
this.$set(this.formData,val)
},
重點~~ 有很多情況是自定義參數
- vue子組件$emit傳出參數后,父組件如何接受參數的同時添加自定義參數
子組件傳參方法不變,以上面changeItem為栗子
區(qū)別 在于父組件接收 [index]為自定義索引參數
<ImageCard @changeImageItem="changeImageItem($event,index)" :specialModuleList="formData.specialModuleList[index]"></ImageCard>
changeImageItem(val,index){
this.$set(this.formData.specialModuleList,[index],val)
},
如果子組件參數需要傳多個
子組件code
changeItem(){
this.$emit('changeImageItem',specialModuleList,this.imageForm, this.type);
},
父組件使用 arguments 接收
<ImageCard @changeImageItem="changeImageItem(arguments,index)" :specialModuleList="formData.specialModuleList[index]"></ImageCard>