vue 值改变后界面没有变_VUE开发中,数据变化后,修改了绑定对象的属性值后,页面dom没有发生变化,两种方法可以重新渲染$set和$forceUpdate...

最近在开发中遇到一个在form表单对象里,有个图片上传的组件,上传成功后返回数据赋值后,图片没有展示出来

74a366b85b51ce5d13e78b15048affe5.png

当我上传图片成功后给form.imgUrl赋值后,页面并没有出现图片的缩略图

该怎么解决呢:

方法1.$set

// 上传成功回调函数

handleAvatarSuccess(res, file) {

this.$set(this.form,'imgUrl',res.data);

},

方法2.$forceUpdate

handleAvatarSuccess(res, file) {

this.form.imgUrl = res.data;

this.$forceUpdate();

},

$set官方api

vm.$set( target, propertyName/index, value )

参数:

{Object | Array} target

{string | number} propertyName/index

{any} value

返回值:设置的值。

用法:

这是全局 Vue.set 的别名。

$forceUpdate

迫使 Vue 实例重新渲染。注意它仅仅影响实例本身和插入插槽内容的子组件,而不是所有子组件。

解决后成功渲染good

ea3520b95c435db72a06db832407253b.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值