背景
页面一进来初始化之后,需要通过获取this.$refs 调用子组件中的某个方法,但是获取不到,返回undefind
这是我遇到的错误情况
正确的情况是这样
搜索查询原因
ref 需要在dom渲染完成后才会有,在使用的时候确保dom已经渲染完成。比如在生命周期 mounted(){} 钩子中调用,或者在 this.$nextTick(()=>{}) 中调用。
如果ref 是循环出来的,有多个重名,那么ref的值会是一个数组 ,此时要拿到单个的ref 只需要循环就可以了。
根据这个方法测试还是不行
解决方法
==在异步方法里面调用 this.$nextTick(()=>{}) ==
mounted() { setTimeout(() => { this.$nextTick(() => { this.$refs['tabbar1'].initTabbaer() }) }, 100); },