vue开发过程中,修改了数据,但是页面不渲染,没变化!怎么办?

在做项目中遇到一个问题
对某个参数赋值成功后页面中没有改变
经过多方查阅终于解决这个问题
跟大家分享一下
希望可以帮到你

方法1(推荐):用JSON.parse(JSON.stringify(objectOrArray))

通常是某个渲染的数组改变了层级较深的数据导致页面没有实时渲染
就这么写 this.items=JSON.parse(JSON.stringify(this.items));
方法2:用:key
给没有渲染改变数据的html元素加入:key=“update”

定义一个update:false,每次修改数据的时候在后面加一句this.update=!this.update;就可以刷新渲染了

方法3:用$set
data() {

return {

    d: { a: "旧的值" }

};

},

this.$set(this.d,“a”,“新的值”);

方法4:用 f o r c e U p d a t e 在修改数据之后加入 t h i s . forceUpdate 在修改数据之后加入this. forceUpdate在修改数据之后加入this.forceUpdate();即可

方法5:用 v-if
就是给需要刷新数据点html标签加上v-if,让其重新渲染(笨办法)

方法6(不推荐):用location.replace(“”);
直接重新location.replace(“”); 刷新整个网页

如果帮到你了,就点赞加关注吧
加关注不迷路哦~

你可能感兴趣的:(前端,vue)