From eee709081bc12c27ef93f471bd2a1f619198af1e Mon Sep 17 00:00:00 2001 From: qiang Date: Sun, 9 Jul 2023 19:37:32 +0800 Subject: [PATCH] refactor(types): improve capitalize types (#6212) --- packages/shared/src/general.ts | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/shared/src/general.ts b/packages/shared/src/general.ts index b36ec89c65..4138b2730e 100644 --- a/packages/shared/src/general.ts +++ b/packages/shared/src/general.ts @@ -110,16 +110,17 @@ export const hyphenate = cacheStringFunction((str: string) => /** * @private */ -export const capitalize = cacheStringFunction( - (str: string) => str.charAt(0).toUpperCase() + str.slice(1) -) +export const capitalize = cacheStringFunction((str: T) => { + return (str.charAt(0).toUpperCase() + str.slice(1)) as Capitalize +}) /** * @private */ -export const toHandlerKey = cacheStringFunction((str: string) => - str ? `on${capitalize(str)}` : `` -) +export const toHandlerKey = cacheStringFunction((str: T) => { + const s = str ? `on${capitalize(str)}` : `` + return s as T extends '' ? '' : `on${Capitalize}` +}) // compare whether a value has changed, accounting for NaN. export const hasChanged = (value: any, oldValue: any): boolean => -- 2.47.3