From: Tycho Date: Mon, 20 May 2024 11:28:22 +0000 (+0800) Subject: fix(shared): ensure invokeArrayFns handles undefined arguments (#10869) X-Git-Tag: v3.4.28~94 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=9b40d0f25da868a83b0d6bf99dbbdb3ca68bb700;p=thirdparty%2Fvuejs%2Fcore.git fix(shared): ensure invokeArrayFns handles undefined arguments (#10869) Co-authored-by: Haoqun Jiang Close #10863 --- diff --git a/packages/runtime-core/__tests__/apiLifecycle.spec.ts b/packages/runtime-core/__tests__/apiLifecycle.spec.ts index 5da57ab32b..43054800af 100644 --- a/packages/runtime-core/__tests__/apiLifecycle.spec.ts +++ b/packages/runtime-core/__tests__/apiLifecycle.spec.ts @@ -40,6 +40,8 @@ describe('api: lifecycle hooks', () => { } render(h(Comp), root) expect(fn).toHaveBeenCalledTimes(1) + // #10863 + expect(fn).toHaveBeenCalledWith() }) it('onMounted', () => { diff --git a/packages/shared/src/general.ts b/packages/shared/src/general.ts index fb884695d3..d2add12550 100644 --- a/packages/shared/src/general.ts +++ b/packages/shared/src/general.ts @@ -133,9 +133,9 @@ export const toHandlerKey = cacheStringFunction((str: T) => { export const hasChanged = (value: any, oldValue: any): boolean => !Object.is(value, oldValue) -export const invokeArrayFns = (fns: Function[], arg?: any) => { +export const invokeArrayFns = (fns: Function[], ...arg: any[]) => { for (let i = 0; i < fns.length; i++) { - fns[i](arg) + fns[i](...arg) } }