【问题标题】:VSCode TypeScript Intellisense not workingVSCode TypeScript Intellisense 不起作用
【发布时间】:2017-03-09 04:24:22
【问题描述】:

从字面上看,我正在把头发拉出来。 Mac 上的 VSCode 1.6.0,Typescript 2.0.2,不过我也试过 2.0.0。

我尝试过以 es5、es6 为目标,无论是否使用 commonjs 模块目标。我无法获取项目本地其他文件的智能感知,也无法获取 node_modules 文件夹中的任何内容。我什至将 node_modules 中的打字稿文件安装到我的打字文件夹中,但这些文件不起作用。

我获得的唯一智能感知是针对全局安装的类型。

{
    "compilerOptions": {
        "target": "es6",
        "sourceMap": true,
        "emitDecoratorMetadata": true,
        "experimentalDecorators": true,
        "allowSyntheticDefaultImports": true,
        "moduleResolution": "node"
    },
    "exclude": [
        "node_modules"
      ]
}

【问题讨论】:

  • 还尝试了 1.8.10 和 2.0.6,这应该可以解决节点模块问题。它没有
  • 你是如何导入模块和其他文件的?

标签: typescript visual-studio-code intellisense typescript2.0


【解决方案1】:

经过大量的试验和错误,我终于让 Node、Typescript、VSCode(和 Visual Studio)和 IntelliSense 正常工作。这似乎也适用于 WebStorm。

从命令提示符创建一个新的 Typescript 项目:

  1. mkdir newproject(或您想要的任何目录名称)
  2. cd newproject
  3. npm init -f(这将创建一个 package.json)
  4. npm install @types/node --save-dev(这将创建一个 nodes_module 文件夹和一个 package-lock.json 文件)
  5. 添加初始tsconfig.json 文件。它可以像{"files" : ["main.ts"] } 一样简单
  6. 添加一个初始的空main.ts 文件以开始使用

现在启动 VS Code 指向它以打开在上述步骤中创建的文件夹。

最重要的。声明模块使用时使用import 关键字。否则,IntelliSense 将无法正常工作。我花了很长时间才意识到这是缺少的一步。

而不是这个:

var http = require("http");

输入这个:

import http = require("http");

神奇的是,您已经有了一个使用 IntelliSense 工作的准系统 Typescript + Node 项目。

【讨论】:

  • 就我而言,只需将其从 var 更改为 import 即可!多亏了你,我的痛苦得到了解决?
猜你喜欢
  • 2019-09-13
  • 2020-05-05
  • 2020-12-10
  • 2022-01-07
  • 2015-07-19
  • 2021-10-08
  • 1970-01-01
  • 2022-01-08
  • 2021-05-06
相关资源
最近更新 更多