From c3fc3dc304d9faa4e2cb3298becc54a1c351512d Mon Sep 17 00:00:00 2001 From: johnsoncodehk Date: Mon, 5 Sep 2022 18:01:25 +0800 Subject: [PATCH] fix: volar.config.js not working since v0.40.7 close #1819 --- packages/vue-language-server/src/common.ts | 6 +++--- .../src/utils/documentServiceHost.ts | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/vue-language-server/src/common.ts b/packages/vue-language-server/src/common.ts index bb48b6d65..304c773e8 100644 --- a/packages/vue-language-server/src/common.ts +++ b/packages/vue-language-server/src/common.ts @@ -62,7 +62,7 @@ export function createLanguageServer( ); for (const root of roots) { - documentServiceHost.add(root.toString()); + documentServiceHost.add(root); } (await import('./features/documentFeatures')).register(connection, documents, documentServiceHost, options.documentFeatures.allowedLanguageIds); @@ -103,12 +103,12 @@ export function createLanguageServer( connection.workspace.onDidChangeWorkspaceFolders(e => { for (const folder of e.added) { - documentServiceHost?.add(folder.uri); + documentServiceHost?.add(URI.parse(folder.uri)); projects?.add(URI.parse(folder.uri)); } for (const folder of e.removed) { - documentServiceHost?.remove(folder.uri); + documentServiceHost?.remove(URI.parse(folder.uri)); projects?.remove(URI.parse(folder.uri)); } }); diff --git a/packages/vue-language-server/src/utils/documentServiceHost.ts b/packages/vue-language-server/src/utils/documentServiceHost.ts index 49e467aca..fc87869ef 100644 --- a/packages/vue-language-server/src/utils/documentServiceHost.ts +++ b/packages/vue-language-server/src/utils/documentServiceHost.ts @@ -26,17 +26,17 @@ export function createDocumentServiceHost( get, }; - function add(rootUri: string) { - workspaceServices.set(rootUri, languageConfigs.getDocumentService( + function add(rootUri: URI) { + workspaceServices.set(rootUri.toString(), languageConfigs.getDocumentService( ts, configHost, runtimeEnv.fileSystemProvide, - loadCustomPlugins(rootUri), - URI.parse(rootUri), + loadCustomPlugins(rootUri.fsPath), + rootUri, )); } - function remove(rootUri: string) { - workspaceServices.delete(rootUri); + function remove(rootUri: URI) { + workspaceServices.delete(rootUri.toString()); } function get(documentUri: string) { for (const [rootUri, service] of workspaceServices) {