From d7af2ee8b8c30da29f2d0381c83d7cc2e4de290a Mon Sep 17 00:00:00 2001 From: johnsoncodehk Date: Sat, 6 Aug 2022 18:08:21 +0800 Subject: [PATCH] fix: make `export default` order unimportant --- packages/vue-code-gen/src/generators/script.ts | 4 ++++ .../vue-tsc/script-setup-scope/export-order.vue | 14 ++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 packages/vue-test-workspace/vue-tsc/script-setup-scope/export-order.vue diff --git a/packages/vue-code-gen/src/generators/script.ts b/packages/vue-code-gen/src/generators/script.ts index b2bc56126..15a68e86e 100644 --- a/packages/vue-code-gen/src/generators/script.ts +++ b/packages/vue-code-gen/src/generators/script.ts @@ -312,6 +312,8 @@ export function generate( codeGen.addText('export default await (async () => {\n'); } + codeGen.addText('const __VLS_setup = async () => {\n'); + codeGen.addCode( scriptSetup.content.substring(scriptSetupRanges.importSectionEndOffset), { @@ -535,6 +537,8 @@ export function generate( codeGen.addText(`const __VLS_slots = (await import('./${path.basename(fileName)}.__VLS_template.jsx')).default;\n`) codeGen.addText(`return {} as typeof __VLS_Component & (new () => { ${getSlotsPropertyName(vueVersion)}: typeof __VLS_slots });\n`); } + codeGen.addText(`};\n`); + codeGen.addText(`return await __VLS_setup();\n`); codeGen.addText(`})();`); exportdefaultEnd = codeGen.getText().length; diff --git a/packages/vue-test-workspace/vue-tsc/script-setup-scope/export-order.vue b/packages/vue-test-workspace/vue-tsc/script-setup-scope/export-order.vue new file mode 100644 index 000000000..fccfe6dcb --- /dev/null +++ b/packages/vue-test-workspace/vue-tsc/script-setup-scope/export-order.vue @@ -0,0 +1,14 @@ + + +