组件传参---父组件通过$refs获取子组件

263 阅读1分钟

第一步:在子组件中添加ref属性:

<SpuForm v-show="scene == 1" ref="spu">spu</SpuForm>

第二步:在父组件xx方法中获取子组件并调用子组件的方法

//修改spu
updateSPU(row) {  // row传递的是整条spu信息
  this.scene = 1;
  this.$refs.spu.initSpuData(row);
},
//在这个项目中SpuForm发送的initSpuData请求不能书写在mounted里面:
//因为每一次显示SpuForm子组件的时候,都会发四个请求
//而我们为什么不能放在子组件的mounted里面,因为v-show只是控制SpuForm子组件显示与隐藏,
//这个子组件并没有卸载(只是显示或者隐藏),导致mounted只能执行一次。
//而我们需要每次点击编辑的时候都需要重新获取数据

第三步:在子组件SpuForm/index.vue文件中定义initSpuData方法