2014-05-13 42 views
0

我有這樣的代碼在我.ts文件Webstorm Typescript支持 - 無法找到符號?

test.control('test-change', TestChange);

test模塊在lib/test.ts初始化,並正確transpiling到test.js

然而,當我寫上面的代碼,webstorm拋出這個錯誤在該行的代碼:

error TS2095: Could not find symbol 'test'.

是否有內Webstorm任何解決方案,以避免這個錯誤?代碼看起來非常好,甚至可以工作。我也使用在Visual Studio中工作的代碼,因此代碼似乎不是問題。

回答

3

Visual Studio隱式地將項目中的所有TypeScript文件包含到全局名稱空間中。手動編寫tsc或使用Webstorm /其他任何你需要明確的引用。

/// <reference path="../path/to/lib/test.ts"/> 

可以潛在地只使用一個reference.tshttps://github.com/grunt-ts/grunt-ts#reference-file-generation雖然我不再建議

咕嚕-TS可以採取///ts:ref=test併爲你生成一個參考標記。

+0

繼上述問題之後,我仍然有同樣的錯誤:/我試着直接引用文件以及使用'grunt-ts'創建'reference.ts'文件並引用它。對於它的價值,它似乎確實代碼實際上正在構建和工作,它只是用'Could not find symbol'錯誤填充我的控制檯。 – Luigi

+0

+1不錯的答案。你能否詳細說明爲什麼你不再推薦''? –

+0

@llya謝謝。從鏈接https://github.com/TypeStrong/grunt-ts#reference-file-generation警告:使用帶有--out/reference.ts的編譯器會減慢快速編譯管道。改用外部模塊進行轉換 – basarat