使用 addUnique 后,在 afterUpdate hook 里面,拿 req.object,addUnique 的字段,发现没有更新。但是控制台发现该字段实际已经更新了。
发现是本地使用 .save() 的问题,不论是set还是add还是addUnique都有问题。例如要更新 _User 表中的 configList 字段:本地更新configList,使用 .save() 函数,触发云端函数的 afterUpdate hook 后,req.object.get('configList') 的值是原来数据库里面的值。但是按函数定义,这个值应该是更新后的值。
本地 lean-cli 只是模拟调试,传入的参数都是手动填写的,在本地修改对象也只会触发线上的 Hook。所以你这个 afterUpdate 里拿到的数据不是最新的这个情况是在本地还是线上遇到的?
是在线上。本地模拟调试,线上hook逻辑出了问题