mirror of https://github.com/vuejs/core.git
fix(reactivity): trigger reactivity for Map key `undefined` (#12055)
close #12054
This commit is contained in:
parent
c0418a3b8f
commit
7ad289e1e7
|
@ -409,4 +409,14 @@ describe('reactivity/reactive', () => {
|
||||||
e.effect.stop()
|
e.effect.stop()
|
||||||
expect(targetMap.get(obj)?.get('x')).toBeFalsy()
|
expect(targetMap.get(obj)?.get('x')).toBeFalsy()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
test('should trigger reactivity when Map key is undefined', () => {
|
||||||
|
const map = reactive(new Map())
|
||||||
|
const c = computed(() => map.get(void 0))
|
||||||
|
|
||||||
|
expect(c.value).toBe(void 0)
|
||||||
|
|
||||||
|
map.set(void 0, 1)
|
||||||
|
expect(c.value).toBe(1)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
|
@ -340,7 +340,7 @@ export function trigger(
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
// schedule runs for SET | ADD | DELETE
|
// schedule runs for SET | ADD | DELETE
|
||||||
if (key !== void 0) {
|
if (key !== void 0 || depsMap.has(void 0)) {
|
||||||
run(depsMap.get(key))
|
run(depsMap.get(key))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue