只能修改组件源码才能解决这个问题了。
在tabItem
的mixins
的childMixin
中修改:
mounted () {
this.$nextTick(() => {
this.$parent.updateIndex()
})
},
updated () {
this.$nextTick(() => {
this.$parent.updateIndex()
})
}
PS:
上面的方法只是治标不治本,本人经过测试发现引起这个bug
的主要原因是flex
布局的flex-basis
属性计算完成时vue
的updated
方法已经调用了!因此想要彻底解决这个bug
就等数据加载完了之后再渲染tab组件。