From dad663e0e8b294e61b9412414674f76546413039 Mon Sep 17 00:00:00 2001 From: Doctorwu <44631608+Doctor-wu@users.noreply.github.com> Date: Wed, 27 Dec 2023 21:49:00 +0800 Subject: [PATCH] feat(syncRef): enhance type (#3678) --- packages/shared/syncRef/index.test.ts | 8 ++++++++ packages/shared/syncRef/index.ts | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/shared/syncRef/index.test.ts b/packages/shared/syncRef/index.test.ts index 670dce60bfe..48295ff2bf1 100644 --- a/packages/shared/syncRef/index.test.ts +++ b/packages/shared/syncRef/index.test.ts @@ -102,6 +102,7 @@ describe('syncRef', () => { const ref0 = ref(0) const ref1 = ref(1) const refString = ref('1') + const refNumber = ref(1) const refNumString = ref(1) const refNumBoolean = ref(1) // L = A && direction === 'both' @@ -253,5 +254,12 @@ describe('syncRef', () => { const bool0 = ref(false) const bool1 = ref(false) syncRef(bool0, bool1) + + syncRef(refNumber, refString, { + // @ts-expect-error lack rtl func + transform: { + ltr: v => String(v), + }, + }) }) }) diff --git a/packages/shared/syncRef/index.ts b/packages/shared/syncRef/index.ts index 544fb5bf88c..de06acd120c 100644 --- a/packages/shared/syncRef/index.ts +++ b/packages/shared/syncRef/index.ts @@ -130,7 +130,7 @@ export type SyncRefOptions = ConfigurableFlushSync & * 3. L ⊆ R * 4. L ∩ R = ∅ */ -export function syncRef( +export function syncRef( left: Ref, right: Ref, ...[options]: Equal extends true