VSCODE Intellisense Node.js适用于.js文件,而不是.ts文件



无法让智能感知适用于 .ts 文件。

测试.js

var http = require('http');
http.[intellisense available]

测试.ts

var http = require('http');
http.[no suggestions]

似乎没有读取索引.d.ts

这是tsconfig.json

{
"compileOnSave": true,
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"sourceMap": true,
"watch": true
}
}

任何建议。 真的很想使用打字稿,但在学习节点时需要提示。 不喜欢使用javascript。

谢谢。

学习曲线。

对于.js文件:

var http = require('http');

对于 .ts 文件:

import http = require('http');

转译器将写出:var http = ...

">

导入"而不是"var"使智能感知起作用。右键单击"转到定义"有效。

问题解决了。

VS Code 的 JavaScript 和 TypeScript 智能感知 用于 Node 和第三方模块由键入文件(d.ts个文件(提供支持。

在 JavaScript 代码中,我们会自动下载这些类型,因为它们仅用于工具支持。例如,当我们在 js 文件中看到require('http')时,我们会自动安装节点类型。这就是为什么在这种情况下获得建议的原因

在 TypeScript 代码中,必须手动管理键入文件,因为它们是编译过程的一部分。例如,要安装节点类型,只需运行npm install --save-dev @types/node。以下是有关@types的更多信息:https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/

我怀疑您只需要安装节点类型即可获得正确的智能感知。

对我来说,有效的不是OP的答案,而是下面的代码:

import * as http from "http";

相关内容

  • 没有找到相关文章

最新更新