最近做新迭代任务,点击弹框里的表格里面的按钮,清除树状结构的数据, 但是 r e f s [ ′ e v e n t G r o u p T r e e ′ ] [ 0 ] . s e t C h e c k e d K e y s ( [ ] ) 获取 u n d e f i n e d , 打印出来一看 t h i s . refs['eventGroupTree'][0].setCheckedKeys([])获取undefined,打印出来一看this. refs[′eventGroupTree′][0].setCheckedKeys([])获取undefined,打印出来一看this.refs[‘eventGroupTree’]为undefined
在网上搜了解决方案有3种:
第一种:页面没有渲染完成----解决不了一点,还是undefined
this.$nextTick(())={
this.$refs['eventGroupTree']
}
第二种: 延时器异步加载------解决不了一点,还是undefined
setTimeout(() => {
console.log(this.$refs["childData"].objData);
}, 10);
第三种: v-if判断他狂开启关闭----------解决不了一点,还是undefined
console.log(this.$refs["childData"].objData);
}
最后的解决方案:
setTimeout(function () {
if (that.selectedEventGroup.length != 0) {
that.$refs['eventGroupTree'][0].setCheckedKeys([])
}
}, 500)
ps: 万物变幻莫测,万变不离其中,小学老师说的对!