From: 三咲智子 Kevin Deng Date: Wed, 6 Dec 2023 06:37:40 +0000 (+0800) Subject: fix: resolve options for parser X-Git-Tag: v3.6.0-alpha.1~16^2~744 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a9f2bfcdbaede058eaeaef2ef3e1028847bbfadf;p=thirdparty%2Fvuejs%2Fcore.git fix: resolve options for parser ref: https://github.com/vuejs/core/pull/9760 --- diff --git a/packages/compiler-core/src/compile.ts b/packages/compiler-core/src/compile.ts index 6ae90907f9..d5a9b0194b 100644 --- a/packages/compiler-core/src/compile.ts +++ b/packages/compiler-core/src/compile.ts @@ -82,7 +82,10 @@ export function baseCompile( onError(createCompilerError(ErrorCodes.X_SCOPE_ID_NOT_SUPPORTED)) } - const ast = isString(source) ? baseParse(source, options) : source + const resolvedOptions = extend({}, options, { + prefixIdentifiers + }) + const ast = isString(source) ? baseParse(source, resolvedOptions) : source const [nodeTransforms, directiveTransforms] = getBaseTransformPreset(prefixIdentifiers) @@ -95,8 +98,7 @@ export function baseCompile( transform( ast, - extend({}, options, { - prefixIdentifiers, + extend({}, resolvedOptions, { nodeTransforms: [ ...nodeTransforms, ...(options.nodeTransforms || []) // user transforms @@ -109,10 +111,5 @@ export function baseCompile( }) ) - return generate( - ast, - extend({}, options, { - prefixIdentifiers - }) - ) + return generate(ast, resolvedOptions) } diff --git a/packages/compiler-vapor/src/compile.ts b/packages/compiler-vapor/src/compile.ts index 7b745fd374..5a5c0cc146 100644 --- a/packages/compiler-vapor/src/compile.ts +++ b/packages/compiler-vapor/src/compile.ts @@ -49,7 +49,10 @@ export function compile( // onError(createCompilerError(ErrorCodes.X_SCOPE_ID_NOT_SUPPORTED)) // } - const ast = isString(source) ? parse(source, options) : source + const resolvedOptions = extend({}, options, { + prefixIdentifiers, + }) + const ast = isString(source) ? parse(source, resolvedOptions) : source const [nodeTransforms, directiveTransforms] = getBaseTransformPreset(prefixIdentifiers) @@ -63,7 +66,6 @@ export function compile( const ir = transform( ast, extend({}, options, { - prefixIdentifiers, nodeTransforms: [ ...nodeTransforms, ...(options.nodeTransforms || []), // user transforms @@ -76,12 +78,7 @@ export function compile( }), ) - return generate( - ir, - extend({}, options, { - prefixIdentifiers, - }), - ) + return generate(ir, resolvedOptions) } export type TransformPreset = [