数据打印实际变化,但页面视图未更新
vue或uniapp类似中,初始化声明 obj:{name:xx,age:''},后续修改直接用this.obj.name=yy 有时会无效。
因为obj.xx属于复杂数据,存储时通过原型链的引入的方式,而不是像字符或数字存哪里引入地址就是哪里。
例如此刻c存的虽然是数据,但并不是堆中存,而是放入栈中,堆和栈其中一个实际访问比较快,堆中存的是栈的引入地址
以上导致修改时会失效,正常应该是类似uniapp底层兼容处理完,但如碰到时,还是用$set处理下算了,这个一般最早是用来给obj新增例如class新属性名,又要加入动态监听用的,这里也可以用来修正这个。