From 69e265286ed0dc1131663a616d57b7a05a504fc2 Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Mon, 1 May 2023 21:07:30 +0800 Subject: [PATCH] fix: generic component prop with default type incorrect close #2754 --- packages/vue-language-core/src/generators/script.ts | 8 +++----- packages/vue-test-workspace/vue-tsc/#2754/comp.vue | 9 +++++++++ packages/vue-test-workspace/vue-tsc/#2754/main.vue | 7 +++++++ 3 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 packages/vue-test-workspace/vue-tsc/#2754/comp.vue create mode 100644 packages/vue-test-workspace/vue-tsc/#2754/main.vue diff --git a/packages/vue-language-core/src/generators/script.ts b/packages/vue-language-core/src/generators/script.ts index 3a195b300..34c8f211f 100644 --- a/packages/vue-language-core/src/generators/script.ts +++ b/packages/vue-language-core/src/generators/script.ts @@ -337,13 +337,11 @@ export function generate( //#region props if ( - (scriptSetupRanges.propsRuntimeArg && scriptSetupRanges.defineProps) + scriptSetupRanges.propsRuntimeArg || scriptSetupRanges.defineProp.length ) { - if (scriptSetupRanges.propsRuntimeArg && scriptSetupRanges.defineProps) { - codes.push(`const __VLS_props = `); - addExtraReferenceVirtualCode('scriptSetup', scriptSetupRanges.defineProps.start, scriptSetupRanges.defineProps.end); - codes.push(`;\n`); + if (scriptSetupRanges.propsRuntimeArg) { + codes.push(`const __VLS_props = (new __VLS_publicComponent()).$props;\n`); } else if (scriptSetupRanges.defineProp.length) { codes.push(`const __VLS_defaults = {\n`); diff --git a/packages/vue-test-workspace/vue-tsc/#2754/comp.vue b/packages/vue-test-workspace/vue-tsc/#2754/comp.vue new file mode 100644 index 000000000..b8a7f837b --- /dev/null +++ b/packages/vue-test-workspace/vue-tsc/#2754/comp.vue @@ -0,0 +1,9 @@ + diff --git a/packages/vue-test-workspace/vue-tsc/#2754/main.vue b/packages/vue-test-workspace/vue-tsc/#2754/main.vue new file mode 100644 index 000000000..ea94b5f87 --- /dev/null +++ b/packages/vue-test-workspace/vue-tsc/#2754/main.vue @@ -0,0 +1,7 @@ + + +