Vue 父子通话

Posted tony_zhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue 父子通话相关的知识,希望对你有一定的参考价值。

dom:
<app-entry ref="child" :id=‘entryFaid‘  v-on:refreshbizlines="EntryUpdateData" v-on:checkOptions="EntryOptions" v-on:ChildSay="ChildReady"></app-entry>
 
js:
import entry from ‘@/components/entryList.vue‘//引入组件
 
//局部引入组件
components: {
    ‘appEntry‘: entry 
},
 
//引用子组件的函数 ref="child"
this.$refs.child.parentMsg(this.entryFaid)
 
 
问题:在el-dialog 引用了组件 一开始不渲染,导致函数调用不到?
解决:当调用函数 el-dialog 显示出来后 ,渲染了组件,在生命周期 mounted中立刻对父节点“大喊:我渲染好了”   
子组件:
mounted(){
    this.$nextTick(function () {
       this.$emit(‘ChildSay‘,true);
   })
}
父组件:
dom有监听: v-on:ChildSay="ChildReady"
methods: {
  ChildReady:function(parms){
    this.childHasMouned=true;//记录子组件已经渲染完毕状态
    this.$refs.child.parentMsg(this.id);//执行子组件的函数(加载列表,等等)
  }
}
 

以上是关于Vue 父子通话的主要内容,如果未能解决你的问题,请参考以下文章

vue父子组件数据传输以及实现父子组件数据双向绑定

Vue3---父子组件间互相传值

父子组件

Vue 父子组件、兄弟组件传值

vue 父子组件传值方法总结(六种方法)

vue父子组件传值方式