vue 数据无法更改

 

data对象初始化时没有的属性在方法里赋值会不触发视图更新或者无法更改

推荐使用  this.$set(this.refund, 'createTime', date)

 

 

 

问题:

编辑页面修改数据,修改不了

原因:

后台查询数据给前台,在map里放了 A:{name:'one',year:12}   B:{gender:'1'}

前台接收:var obj = response.A

             obj.gender = response.gender  【问题出在这里】

obj 里面没有gender属性,前台修改会修改不动

 

 

一开始是这么写的

然后前台赋值实际上是给一个对象

 

当第一个notice[0]对象里没有roleIds和operateType等值时,就不能通过前端v-model修改其值

解决:

1.修改前台 data 数据
A:{
    name:'',
    year:'',
    gender:''
}
不过直接赋值后台的key还是会覆盖前台属性,可以用Object.assign

2.我用的改后台
别偷懒了,把gender直接放在一起赋给前台


后来也遇到相似问题,总之保证你要修改的属性在vue的data对象里,直接A.xx塞给A的属性不能修改

最好放在一份实体类里面,实在要用map返回要保证第一次赋值有对应的键值

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值