From 776ebf25b2e7570e78ac1c148fc45c823c21a542 Mon Sep 17 00:00:00 2001 From: vaakian X Date: Tue, 11 Jul 2023 17:26:31 +0800 Subject: [PATCH] fix(compiler-sfc): fix using imported ref as template ref during dev (#7593) close #7567 --- .../__snapshots__/compileScript.spec.ts.snap | 15 +++++++++++++++ .../__tests__/compileScript.spec.ts | 17 +++++++++++++++++ .../compiler-sfc/src/script/importUsageCheck.ts | 3 +++ 3 files changed, 35 insertions(+) diff --git a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap index 18b5d90eaf6..de19ec5aaf2 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap @@ -775,6 +775,21 @@ return { get FooBaz() { return FooBaz }, get Last() { return Last } } })" `; +exports[`SFC compile + + `) + expect(content).toMatch( + 'return { get foo() { return foo }, get bar() { return bar }, get Baz() { return Baz } }' + ) + assertCode(content) + }) }) describe('inlineTemplate mode', () => { diff --git a/packages/compiler-sfc/src/script/importUsageCheck.ts b/packages/compiler-sfc/src/script/importUsageCheck.ts index b42397d573b..28456a45bba 100644 --- a/packages/compiler-sfc/src/script/importUsageCheck.ts +++ b/packages/compiler-sfc/src/script/importUsageCheck.ts @@ -57,6 +57,9 @@ function resolveTemplateUsageCheckString(sfc: SFCDescriptor) { )}` } } + if (prop.type === NodeTypes.ATTRIBUTE && prop.name === 'ref' && prop.value?.content) { + code += `,${prop.value.content}` + } } } else if (node.type === NodeTypes.INTERPOLATION) { code += `,${processExp(