fix(compiler-sfc): register exported bindings in normal script when using script setup (#4601)

fix #4600
This commit is contained in:
edison
2021-09-17 05:22:29 +08:00
committed by GitHub
parent cab9541ffd
commit 8055445b68
3 changed files with 22 additions and 5 deletions

View File

@@ -702,7 +702,7 @@ export function compileScript(
const start = node.start! + scriptStartOffset!
const end = node.declaration.start! + scriptStartOffset!
s.overwrite(start, end, `const ${defaultTempVar} = `)
} else if (node.type === 'ExportNamedDeclaration' && node.specifiers) {
} else if (node.type === 'ExportNamedDeclaration') {
const defaultSpecifier = node.specifiers.find(
s => s.exported.type === 'Identifier' && s.exported.name === 'default'
) as ExportSpecifier
@@ -735,6 +735,9 @@ export function compileScript(
)
}
}
if (node.declaration) {
walkDeclaration(node.declaration, setupBindings, userImportAlias)
}
} else if (
(node.type === 'VariableDeclaration' ||
node.type === 'FunctionDeclaration' ||