在Vue组件中,在mounted阶段调用了一个函数去请求异步数据,将返回结果赋给data里面的值却失败了,赋值完console.log()出来明明是有值的,但页面却没有更新过来。我还一直以为是nuxt生命周期的原因,但明显不是。因为这个问题只有在偶尔才会出现,并不是每次进入页面时渲染都会有这个问题。
然后我就想到以前用过的this.$forceUpdate()
方法,在函数中赋值完成以后,只要执行this.$forceUpdate()
去强制刷新数据,就不会有这个问题出现了,至于这个bug为什么会出现,我还没有想明白。
总结,以后在vue中遇到赋值失败的,尽管试试this.$forceUpdate()
,有奇效~