From: Evan You Date: Mon, 19 Jul 2021 14:43:14 +0000 (-0400) Subject: refactor: improve the fix for #4138 X-Git-Tag: v3.2.0-beta.2~22 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=47ba33e27b93f789b1f30fc34fab119c852d10fd;p=thirdparty%2Fvuejs%2Fcore.git refactor: improve the fix for #4138 --- diff --git a/packages/shared/src/normalizeProp.ts b/packages/shared/src/normalizeProp.ts index 7d4ba83a92..ec765be0f9 100644 --- a/packages/shared/src/normalizeProp.ts +++ b/packages/shared/src/normalizeProp.ts @@ -3,14 +3,16 @@ import { isNoUnitNumericStyleProp } from './domAttrConfig' export type NormalizedStyle = Record -export function normalizeStyle(value: unknown): NormalizedStyle | undefined { +export function normalizeStyle( + value: unknown +): NormalizedStyle | string | undefined { if (isArray(value)) { const res: NormalizedStyle = {} for (let i = 0; i < value.length; i++) { const item = value[i] - const normalized = normalizeStyle( - isString(item) ? parseStringStyle(item) : item - ) + const normalized = isString(item) + ? parseStringStyle(item) + : (normalizeStyle(item) as NormalizedStyle) if (normalized) { for (const key in normalized) { res[key] = normalized[key] @@ -19,7 +21,7 @@ export function normalizeStyle(value: unknown): NormalizedStyle | undefined { } return res } else if (isString(value)) { - return parseStringStyle(value) + return value } else if (isObject(value)) { return value }