如题,Component文档当中提到的:
bug : 对于 type 为 Object 或 Array 的属性,如果通过该组件自身的 this.setData 来改变属性值的一个子字段,则依旧会触发属性 observer ,且 observer 接收到的 newVal 是变化的那个子字段的值, oldVal 为空, changedPath 包含子字段的字段名相关信息;目前推荐使用 observers 定义段代替。
虽然上面文档当中提到的bug是针对oldValue的,但是无论是miniprogram-api-types还是官方文档,都提到了observer函数第三个参数changedPath,经过测试,发现监听整个变量,虽然会如文档上讲述的那样,oldValue为空,但是changedPath依然是空的。