如何强制 VSCode 使用本地安装的 TypeScript
Posted
技术标签:
【中文标题】如何强制 VSCode 使用本地安装的 TypeScript【英文标题】:How to force VSCode to use locally installed TypeScript 【发布时间】:2019-07-15 14:12:47 【问题描述】:有没有办法强制 Visual Studio Code 在编辑该项目时使用本地安装在 JS 项目中的 TypeScript(而不是与 VSCode 捆绑的版本,或全局安装的版本)进行类型检查?
【问题讨论】:
相对于什么? @Phix:请阅读 VSCode 中的“typescript.tsdk”设置 What TypeScript version is Visual Studio Code using? How to update it?的可能重复 这个问题绝对不是那个问题的重复。链接的问题是询问如何查找正在使用的 TypeScript 版本。我的问题是关于如何强制某个版本,即已安装在正在编辑的项目的 node_modules 文件夹中的版本。关于选择另一个版本的答案不包括我感兴趣的这个场景。 【参考方案1】:我假设你已经在myProject
目录中安装了 TypeScript。
cd myProject
npm install --save-dev typescript
如果您已经这样做了,那么添加一个带有 settings.json
文件的 .vscode/
目录,该文件指定要使用的 TypeScript SDK:
"typescript.tsdk": "node_modules\\typescript\\lib"
这是最终的目录结构:
myProject
.vscode
settings.json
node_modules
typescript
lib
重要提示:确保你在myProject
目录中打开VSCode!
VS Code 文档将此称为“using the workspace version of TypeScript”。
【讨论】:
@Luttin:我试过这个,然后重新启动 VSCode,但我仍然没有选择使用我的项目版本。仅供参考,在我的 package.json 的开发依赖项中,我安装了 3.2.2 版。但是 VSCode 使用的版本是 3.3.1。 你在 VSCode 中打开了什么文件夹?该文件夹是否包含.vscode/
目录?比如你有myProject/.vscode/settings.json
,你是在VSCode中打开myProject
目录吗?
@Luttin:是的,这正是我的设置
你手上有一个有趣的谜团。如果您有时间,请与您的设置共享一个存储库,以便我可以在我的本地计算机上尝试它。另外,您使用的是什么版本的 VSCode?span>
@Luttin,抱歉现在可以使用了。原来我打开了项目文件夹的超级文件夹。【参考方案2】:
Shaun Luttins 的回答对我有用,除了一个细节:使用 Visual Studio Code 文件 settings.json 的 1.31.1 版本仅在直接放置在工作区的根文件夹中时才有效,而不是在文件夹 .vscode
中。
【讨论】:
以上是关于如何强制 VSCode 使用本地安装的 TypeScript的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ./node_modules/@types 之外使用打字稿定义文件
React-Native在vs code开发,提示 “types” 只能在ts中使用的解决方案
如何强制 VSCode 的 Tailwind CSS IntelliSense 扩展与 .html.eex 和 .html.leex 文件一起使用?