網站搜尋

typescript1.7 - Typescript 1.8 是否需要引用路徑聲明?


我的專案在 Visual Studio 2015 中使用 TypeScript 專案類型,在 1.7 下編譯得很好

我安裝了 1.8,現在我收到一大堆 找不到名稱... 和 找不到模組... 的錯誤。

例如,我得到 Cannot find name 'breeze'。

但如果我將這個加入檔案中:
/// <reference path="../../../scripts/typings/breeze/breeze.d.ts" />

然後他們都走了……(風一樣的那個會走)」

但在升級之前,我並不需要那些來編譯。

有人明白這裡發生了什麼事嗎?

答案#1

你需要做的是查看 typings。

https://github.com/typings/typings

你應該能夠很容易地用它安裝 breeze。

typings install breeze

除此之外,VS 應該能自動看到你所有的 .d.ts DefinitelyTyped 檔案,如果沒有的話,只需確保你的 tsconfig.json 在其 filesGlob 陣列中包含所有 /yourAppPath/*.ts 檔案,這也應該能解決問題。

最後,一些 IDE 會識別 _references.ts 文件,你可以在其中包含所有的參考引用 /// <reference path="blah.d.ts" />

答案#2

如果您正在使用 Resharper 2016.1(實際版本 14.0.25123.0),您可能需要清理 breeze.d.ts 文件中的一些「噪音」,這些噪音會破壞其智能提示功能。

在模組 'breeze.config' 中,你會看到每個函數上方的註解。這些註解包含 '@' 符號,似乎被解釋為有效的裝飾器建議。刪除這些註解,你就沒問題了。

有趣的是,儘管如此,在我刪除了註解並保存了 .d.ts 文件之後,我就可以將註解放回去而不會引起 Resharper 的抱怨。所以這似乎是 Resharper 的一個錯誤。