如何安装 TypeScript 定义文件,以便始终由 VS Code 加载?

Posted

技术标签:

【中文标题】如何安装 TypeScript 定义文件,以便始终由 VS Code 加载?【英文标题】:How can I install a TypeScript definition file so it is always loaded by VS Code? 【发布时间】:2016-03-09 22:04:11 【问题描述】:

我在 SharePoint 上做了很多工作,所以我希望能够安装 SharePoint and Ajax typescript definitions 文件,这样我就可以在 VS Code 中为它们使用 Intellisense。

我在 SE 上发现了另一个问题:

How to Import Intellisense files into vsCode (Visual Studio Code)

但它处理 OSX(我在 Windows 上),显然您仍然需要在代码文件的顶部添加引用。

有没有办法/地方可以安装它们,以便 VS Code 始终自动加载它们,而我不必在代码文件的顶部引用它们?

【问题讨论】:

【参考方案1】:

不幸的是,似乎没有一种方法可以实现我最初想要的,即在我启动 Code 时加载类型定义,无论我在哪里工作。

所以答案是做一些类似于 Nypan 建议的事情,但事实证明它比这更容易。

根据documentation on the VS Code website,我什至不需要tsconfig.json文件,我可以使用jsconfig.json文件,而且我什至不需要在“文件”部分指定类型定义文件.

例如,您可以将新的类型定义 .d.ts 文件拖放到 您的项目文件夹和 VS Code 会自动拾取它。

所以,我只需要将 .d.ts 文件放在我工作空间的“根”下的某个位置,并在根目录中放置一个 jsconfig.json 文件,就像这样简单:


    "compilerOptions": 
        "module": "commonjs"
    

我得到了 SharePoint 的 IntelliSense。

【讨论】:

一个空的 jsconfig.json 文件对我有用。并且打字稿声明不必在项目的根目录中,我将它们放在 /types 目录中。【参考方案2】:

您始终可以创建一个 tsconfig.json 文件 (read more about it here) 并将其放在“项目”的根目录中。

类似这样的:


    "compilerOptions": 
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "preserveConstEnums": true,
        "out": "../../built/local/tsc.js",
        "sourceMap": true
    ,
    "files": [
        "myDefinition.d.ts",
        "myOtherDefinition.d.ts",
        "SomethingToTranspile.ts",
        "SomethingElseToTranspile.ts",
    ]

以上只是一个例子,在我提供的链接上阅读更多信息。

【讨论】:

【参考方案3】:

来自文档:https://code.visualstudio.com/docs/languages/javascript#_automatic-type-acquisition

如果您使用的是 Visual Studio Code 1.8+,另一种方法是显式列出要在 jsconfig.json 中获取类型声明文件的包。

"typeAcquisition": 
    "include": [
        "lodash"
    ]

【讨论】:

以上是关于如何安装 TypeScript 定义文件,以便始终由 VS Code 加载?的主要内容,如果未能解决你的问题,请参考以下文章

为我的反应打字稿组件库生成/维护打字稿定义文件

如何在 TypeScript 2 项目中为 Firebase 3 安装类型?

TypeScript 字段类型依赖于其他字段

如何使用 libman 而不是 npm 下载 typescript 定义

您如何定义具有键字符串索引但具有特定类型的已知键的 TypeScript 接口?

如何从 TypeScript 文件生成类型定义文件?