|
|
@@ -724,6 +724,27 @@ describe('reactivity/reactive/Array', () => {
|
|
|
expect(state.things.forEach('foo', 'bar', 'baz')).toBeUndefined()
|
|
|
expect(state.things.map('foo', 'bar', 'baz')).toEqual(['1', '2', '3'])
|
|
|
expect(state.things.some('foo', 'bar', 'baz')).toBe(true)
|
|
|
+
|
|
|
+ {
|
|
|
+ class Collection extends Array {
|
|
|
+ find(matcher: any) {
|
|
|
+ return super.find(matcher)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ const state = reactive({
|
|
|
+ // @ts-expect-error
|
|
|
+ things: new Collection({ foo: '' }),
|
|
|
+ })
|
|
|
+
|
|
|
+ const bar = computed(() => {
|
|
|
+ return state.things.find((obj: any) => obj.foo === 'bar')
|
|
|
+ })
|
|
|
+ bar.value
|
|
|
+ state.things[0].foo = 'bar'
|
|
|
+
|
|
|
+ expect(bar.value).toEqual({ foo: 'bar' })
|
|
|
+ }
|
|
|
})
|
|
|
})
|
|
|
})
|