2016-10-26 115 views
0

我在这里拉我的头发,字面意思。 Mac上的VSCode 1.6.0,Typescript 2.0.2,但我也试过2.0.0。VSCode TypeScript智能感知不起作用

我试过针对es5,es6,有或没有commonjs模块定位。我无法获取本地项目的其他文件的intellisense,也无法获取node_modules文件夹中的任何内容。我甚至将node_modules的打字稿文件安装到我的typings文件夹中,这些文件不起作用。

我得到的唯一智能是我的全球安装类型。

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

也试过1.8.10和2.0.6,这本来是为了解决节点模块问题。它不会 – TPiddy042

+0

你是如何导入模块和其他文件? –

回答

0

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

创建从命令提示符下一个新的打字稿项目:

  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代码点它打开在上面的步骤中创建的文件夹。

最重要的。声明模块使用时使用import关键字。否则,IntelliSense扁平化将不起作用。我花了很长时间才意识到这是失败的一步。

取而代之的是:

var http = require("http"); 

键入:

import http = require("http"); 

而且奇妙的是,你得有智能感知工作准系统打字稿+节点项目。