问题描述:一、当数据通过异步操作后,对之前加载的数据进行变更后,发现数据不生效。

                  二、A组件或者B组件,触发C组件数据更新,但是C组件仍显示原来数据。
                  三、路由不变的情况下,只改变了路由参数时,页面不更新

方案一:v-if(可以重置生命周期)(看情况使用)

需要重新渲染的组件

改变数据状态的组件,我在vuex种改变了type状态(这个type可以在你需要触发的位置改变) 

方案二 ::key=‘’(此处可触发watch和update)(最优方法)

需要重新渲染的组件

 

 改变数据状态的组件

方案三:this.$forceUpdate(不太常用,个人觉得性能不太好,也可能我用的不太对,希望大神们指教)
使用前需要在配置中启用

import Vue from 'vue'
Vue.forceUpdate()

这个方法可以使当前组件调用这个方法时,重新渲染组件。

方案四:刷新整个页面(最不推荐)
1、reload     2、this.$router.go(0)

希望这篇文章可以帮到大家,有问题欢迎留言一起探讨!!!!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐