Dexie bulkPut操作中数组未变更却触发updating钩子的问题
Dexie的table.hook('updating')钩子对数组的异常触发问题
我在测试Dexie的table.hook('updating', (mods, pk, obj) => {})钩子时发现:使用.bulkPut()更新数据时,即便传入数组的内容完全没有变化,该钩子仍会将数组字段标记为已修改;但更新数据源data.json中的字符串值时,钩子仅在值实际变更时触发,表现符合预期。我不确定数组值在Dexie中是否存在特殊处理逻辑。
测试代码
this.animal.hook('updating', (mods, pk) => { console.log("Bull GlobalId: ", pk, " Updated: ", mods); });
控制台日志输出
Bull GlobalId: HO-M-20201010-840-003223871370 Updated: {naab_codes: Array(2), animal.NaabCodes: Array(2)} animal.NaabCodes: Array(2) 0: {NaabCode: '250HO15702', Sexed: false, Priority: 0, IsPrimaryNaabCode: true} 1: {NaabCode: '7HO15702', Sexed: false, Priority: 1, IsPrimaryNaabCode: false} naab_codes: Array(2) 0: "250HO15702" 1: "7HO15702"
内容的提问来源于stack exchange,提问作者ddamko
相关产品推荐
相关产品推荐

