From 96a587256b73d89fd2256d33986488db4080852a Mon Sep 17 00:00:00 2001 From: johnsoncodehk Date: Mon, 21 Mar 2022 05:28:29 +0800 Subject: [PATCH] fix: goto definition not working with mapping failed edge cases close #1048, close #435 --- packages/vue-code-gen/src/generators/script.ts | 17 +++++++++++++++++ .../vue-typescript/src/use/useSfcScriptGen.ts | 4 ---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/packages/vue-code-gen/src/generators/script.ts b/packages/vue-code-gen/src/generators/script.ts index 579ab5f73..b10790344 100644 --- a/packages/vue-code-gen/src/generators/script.ts +++ b/packages/vue-code-gen/src/generators/script.ts @@ -100,6 +100,23 @@ export function generate( ); } + // fix https://github.com/johnsoncodehk/volar/issues/1048, https://github.com/johnsoncodehk/volar/issues/435 + codeGen.addMapping2({ + data: { + vueTag: 'sfc', + capabilities: {}, + }, + mode: SourceMaps.Mode.Expand, + mappedRange: { + start: 0, + end: codeGen.getText().length, + }, + sourceRange: { + start: 0, + end: 0, + }, + }); + return { codeGen, teleports, diff --git a/packages/vue-typescript/src/use/useSfcScriptGen.ts b/packages/vue-typescript/src/use/useSfcScriptGen.ts index b9552508b..4035a76f9 100644 --- a/packages/vue-typescript/src/use/useSfcScriptGen.ts +++ b/packages/vue-typescript/src/use/useSfcScriptGen.ts @@ -59,12 +59,8 @@ export function useSfcScriptGen( }); const file = computed(() => { - let _fileName: string | undefined; - if (lsType === 'script') { - _fileName = fileName + '.' + lang.value - const file: EmbeddedFile = { lsType, fileName: fileName + '.' + lang.value,