2016-10-26 113 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"); 

而且奇妙的是,你得有智能感知工作準系統打字稿+節點項目。