typescript - 如何在 VS 代码语言服务器中将 Uri 转换为文件路径?

标签 typescript visual-studio-code vscode-extensions

在 VS Code 扩展中,您可以像这样将 uri 转换为文件路径:

import {Uri} from 'vscode';
let uri = 'file:///c%3A/WINDOWS/file.txt';  
let path:string = Uri.parse(uri).fsPath;  

但是,在语言服务器中这不起作用,因为导入 vscode 失败。 原因是 vscode “不是真正的 node_module”
vscode issue #6586 运行成功后,

node ./node_modules/vscode/bin/install

当语言服务器启动时它仍然没有找到模块:

Error: Cannot find module 'vscode'

以独立于平台的方式将 Uri 转换为文件路径的最佳方法是什么?

最佳答案

看来微软已经移动了这个package ,所以你需要这样做:

首先添加为依赖:

npm install --save vscode-uri

然后在你的程序中:

import Uri from 'vscode-uri'

关于typescript - 如何在 VS 代码语言服务器中将 Uri 转换为文件路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37658425/

相关文章:

c# - 使用带有 C# 的 Selenium WebDriver 迭代链接

java - 如何在运行 Java 代码的 Visual Studio Code 上隐藏不需要的日志消息

javascript - Visual Studio Code Language Server - 如何验证工作区中的所有文件

visual-studio-code - 无法获取开发 VS Code 扩展的工作区中的文件列表

javascript - 结合数组和字典属性的数据类型

typescript - 具有基于另一个参数的默认参数的函数

来自 VS Code : "No anonymous write access. Authentication failed" 的 git push

visual-studio-code - 用于在 nodejs 应用程序中查找未使用的公共(public)函数的 VScode 扩展

typescript - 使用 karma-jasmine 和 istanbul 的 Typescript 代码覆盖率

javascript - 为什么我的 Typescript 定义的类上的属性显示为未定义?