From 0df4c7664bdb947c71a82e3288a2f343c76240fc Mon Sep 17 00:00:00 2001 From: Wei Zhu Date: Wed, 30 Mar 2022 00:38:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=20CSS=20=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E7=9A=84=E6=95=B0=E5=AD=97=E4=BC=9A=E8=A2=AB=E5=8A=A0?= =?UTF-8?q?=E4=B8=8A=E5=8D=95=E4=BD=8D=E7=9A=84=E9=97=AE=E9=A2=98=20(#1870?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix #1869 --- .../remax-runtime/src/__tests__/utils/plainStyle.test.ts | 5 +++++ packages/remax-runtime/src/utils/plainStyle/index.ts | 5 ++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/remax-runtime/src/__tests__/utils/plainStyle.test.ts b/packages/remax-runtime/src/__tests__/utils/plainStyle.test.ts index 95a5bde2c..fcfadd53f 100644 --- a/packages/remax-runtime/src/__tests__/utils/plainStyle.test.ts +++ b/packages/remax-runtime/src/__tests__/utils/plainStyle.test.ts @@ -8,4 +8,9 @@ describe('plainStyle pxToRpx', () => { style = plainStyle({ width: '100.55555px' }); expect(style.indexOf('100.56rpx') > -1).toBeTruthy(); }); + + it('does not transform css variable', () => { + const style = plainStyle({ '--column': 1 }); + expect(style).toMatchInlineSnapshot(`"--column:1;"`); + }); }); diff --git a/packages/remax-runtime/src/utils/plainStyle/index.ts b/packages/remax-runtime/src/utils/plainStyle/index.ts index e037be5dd..aca558b9b 100644 --- a/packages/remax-runtime/src/utils/plainStyle/index.ts +++ b/packages/remax-runtime/src/utils/plainStyle/index.ts @@ -1,4 +1,3 @@ -import { CSSProperties } from 'react'; import { isUnitlessNumber } from './CSSProperty'; import { find, RuntimeOptions } from '@remax/framework-shared'; @@ -39,12 +38,12 @@ const transformPx = (value: string) => { }); }; -const plainStyle = (style: CSSProperties) => { +const plainStyle = (style: Record) => { return Object.keys(style) .reduce((acc: string[], key) => { let value = (style as any)[key]; - if (!Number.isNaN(Number(value)) && !isUnitlessNumber[key]) { + if (!Number.isNaN(Number(value)) && !isUnitlessNumber[key] && !key?.startsWith('--')) { value = value + 'rpx'; }