fix(v-model): avoid mutation when using Set models + fix multi select Set model update

This commit is contained in:
Evan You
2020-12-01 11:40:14 -05:00
parent 83a79a829c
commit f2b0a8e81d
2 changed files with 16 additions and 4 deletions

View File

@@ -884,18 +884,21 @@ describe('vModel', () => {
foo.selected = true
triggerEvent('change', input)
await nextTick()
expect(data.value).toBeInstanceOf(Set)
expect(data.value).toMatchObject(new Set(['foo']))
foo.selected = false
bar.selected = true
triggerEvent('change', input)
await nextTick()
expect(data.value).toBeInstanceOf(Set)
expect(data.value).toMatchObject(new Set(['bar']))
foo.selected = true
bar.selected = true
triggerEvent('change', input)
await nextTick()
expect(data.value).toBeInstanceOf(Set)
expect(data.value).toMatchObject(new Set(['foo', 'bar']))
foo.selected = false