fix(reactivity): account for NaN in value change checks (#361)

This commit is contained in:
Mayness
2019-10-23 10:53:43 -05:00
committed by Evan You
parent 11d0778f9c
commit 18a349ce8c
7 changed files with 47 additions and 8 deletions

View File

@@ -311,5 +311,13 @@ describe('reactivity/collections', () => {
map.get(key)!.foo++
expect(dummy).toBe(2)
})
it('should not be trigger when the value and the old value both are NaN', () => {
const map = reactive(new Map([['foo', NaN]]))
const mapSpy = jest.fn(() => map.get('foo'))
effect(mapSpy)
map.set('foo', NaN)
expect(mapSpy).toHaveBeenCalledTimes(1)
})
})
})

View File

@@ -107,5 +107,15 @@ describe('reactivity/collections', () => {
observed.get(key).a = 2
expect(dummy).toBe(2)
})
it('should not be trigger when the value and the old value both are NaN', () => {
const map = new WeakMap()
const key = {}
map.set(key, NaN)
const mapSpy = jest.fn(() => map.get(key))
effect(mapSpy)
map.set(key, NaN)
expect(mapSpy).toHaveBeenCalledTimes(1)
})
})
})