前因
在小程序中使用下这种方式赋值,也就是直接修改数组对象,然后进行整个数组的setData,有时会造成一些极其离谱的问题
this.data.breakdowns[e.currentTarget.dataset.index].breakdownDescription = e.detail.value; this.setData({ breakdowns: this.data.breakdowns })
给我造成的现象:在ios下,textarea输入内容一直闪烁,输入不了内容,也删除不了内容。排查了2个小时的业务逻辑发现,纯属小程序的问题,和自己的业务代码没有丝毫问题!!!!
解决方式
使用这种方式,多走一步字符串模版变量进行赋值,奇迹般的就好了,简直离谱。
const key = `breakdowns[${e.currentTarget.dataset.index}].breakdownDescription` this.setData({ [key]: e.detail.value })
标签:breakdowns,微信,程序,dataset,数组,赋值,setData From: https://www.cnblogs.com/feifei0928/p/17902662.html