【问题标题】:vs-code giving typescript help in plain node projectvs-code 在普通节点项目中提供打字稿帮助
【发布时间】:2020-03-26 18:01:46
【问题描述】:

我有一个非常简单的 nodeJs 项目;我的 pacakge.json 只是

{
  "dependencies": {
    "node-static": "^0.7.11"
  }
}

我已手动复制到 d3.js 文件中,并将其作为静态文件提供 - 所以不会转译或发生任何事情。

Vs-code 仍然给我一些打字稿帮助 - 这太棒了。但是它停止工作了几分钟;这让我意识到我不知道它是如何给我文档的。

vs-code 是否有一些默认的链接 typescript 定义的方法?

谢谢

【问题讨论】:

    标签: node.js typescript visual-studio-code


    【解决方案1】:

    Typescript(然后是 VSCode)有四种方法可以将类型定义链接到您的代码:

    1) 它寻找node_modules/@types/yourpackage(我想也是全局的)

    2) 它会在您正在导入的包中查找.d.ts 文件

    3) 它使用您通过文件顶部的/// <reference path="" /> 告诉它使用的类型(但我认为这可能已被弃用,但我不太确定)

    4) 它使用 package.json 中的 types 键并扫描您在其数组中指定的目录以查找与您的导入同名的 .d.ts

    例如

    import * as shaka from "shaka-player"
    

    它将寻找shaka.d.ts(但它必须在其中声明一个名为shaka-player的模块)。

    希望这能回答您的问题!

    【讨论】:

    • 感谢您的指点;据我所知,我没有设置任何这些选项。所以似乎 vs-code 有点自动地做其中之一。我看看能不能查到什么。
    • 自我注意 - ts 定义来自 /home/ishweretheheartis/.cache/typescript/3.8/node_modules/@types/d3-selection/index.d.ts
    • 我认为 Typescript 可能也在使用该包(但我不确定),因此它包括它所具有的类型。我实际上不知道他们为什么在那里以及为什么会在那里找到他们。也许它有第五种方法来查找类型。
    猜你喜欢
    • 2018-04-03
    • 2022-01-05
    • 2020-02-22
    • 2018-02-20
    • 2021-12-25
    • 1970-01-01
    • 2017-01-02
    • 2020-11-08
    • 1970-01-01
    相关资源
    最近更新 更多