From: 三咲智子 Kevin Deng Date: Thu, 25 Jan 2024 08:24:42 +0000 (+0800) Subject: fix(compiler-vapor): omit prop key for set class&style X-Git-Tag: v3.6.0-alpha.1~16^2~658 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8848d105222a7f26e7224b3981c90e1f7817cc34;p=thirdparty%2Fvuejs%2Fcore.git fix(compiler-vapor): omit prop key for set class&style --- diff --git a/packages/compiler-vapor/src/generators/prop.ts b/packages/compiler-vapor/src/generators/prop.ts index 4dd4a1c958..b48d0773bf 100644 --- a/packages/compiler-vapor/src/generators/prop.ts +++ b/packages/compiler-vapor/src/generators/prop.ts @@ -15,10 +15,13 @@ export function genSetProp(oper: SetPropIRNode, context: CodegenContext) { const keyName = isString(oper.key) ? oper.key : oper.key.content let helperName: string | undefined + let omitKey = false if (keyName === 'class') { helperName = 'setClass' + omitKey = true } else if (keyName === 'style') { helperName = 'setStyle' + omitKey = true } else if (oper.modifier) { helperName = oper.modifier === '.' ? 'setDOMProp' : 'setAttr' } @@ -27,14 +30,16 @@ export function genSetProp(oper: SetPropIRNode, context: CodegenContext) { pushFnCall( vaporHelper(helperName), element, - () => { - const expr = () => genExpression(oper.key, context) - if (oper.runtimeCamelize) { - pushFnCall(helper('camelize'), expr) - } else { - expr() - } - }, + omitKey + ? false + : () => { + const expr = () => genExpression(oper.key, context) + if (oper.runtimeCamelize) { + pushFnCall(helper('camelize'), expr) + } else { + expr() + } + }, 'undefined', () => genExpression(oper.value, context), )