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(“”); 刷新整个网页

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值