diff --git a/packages/compiler-sfc/__tests__/compileScript/importUsageCheck.spec.ts b/packages/compiler-sfc/__tests__/compileScript/importUsageCheck.spec.ts index b842f7a46..fe52b12d4 100644 --- a/packages/compiler-sfc/__tests__/compileScript/importUsageCheck.spec.ts +++ b/packages/compiler-sfc/__tests__/compileScript/importUsageCheck.spec.ts @@ -234,3 +234,19 @@ test('namespace / dot component usage', () => { expect(content).toMatch('return { get Foo() { return Foo } }') assertCode(content) }) + +test('check when has explicit parse options', () => { + const { content } = compile( + ` + + + `, + undefined, + { templateParseOptions: {} }, + ) + expect(content).toMatch('return { get x() { return x } }') +}) diff --git a/packages/compiler-sfc/src/parse.ts b/packages/compiler-sfc/src/parse.ts index 08d862446..01a4bec6e 100644 --- a/packages/compiler-sfc/src/parse.ts +++ b/packages/compiler-sfc/src/parse.ts @@ -133,7 +133,7 @@ export function parse( pad = false, ignoreEmpty = true, compiler = CompilerDOM, - templateParseOptions = { prefixIdentifiers: true }, + templateParseOptions = {}, } = options const descriptor: SFCDescriptor = { @@ -152,6 +152,7 @@ export function parse( const errors: (CompilerError | SyntaxError)[] = [] const ast = compiler.parse(source, { parseMode: 'sfc', + prefixIdentifiers: true, ...templateParseOptions, onError: e => { errors.push(e)