TL; DR打字稿,聲明一個變量與聲明模塊
是什麼意思,當一個變量打字稿聲明?例如(來自TypeScript手冊或wiki):
declare var d3:D3.Base;
這種情況下的目的是什麼?
更多的想法:
據我所知,聲明一個模塊或命名空間指示它是環境溫度,即它不編譯成JavaScript,並且僅用於描述對象的形狀(類型檢查)。但是,變量聲明的目的在於避開我。
的問題出現了,因爲我一直在尋找從絕對類型(angular.d.ts)的角度聲明文件:
declare var angular: angular.IAngularStatic;
// Support for painless dependency injection
interface Function {
$inject?: string[];
}
// Collapse angular into ng
import ng = angular;
// Support AMD require
declare module 'angular' {
export = angular;
}
///////////////////////////////////////////////////////////////////////////////
// ng module (angular.js)
///////////////////////////////////////////////////////////////////////////////
declare module angular {......module declaration continues....
我竭力要弄清楚到底發生了什麼事情在這裏的「導入「和變量聲明。 Visual Studio代碼似乎不喜歡導入,但Visual Studio 2015接受它(都使用TypeScript 1.6.2)。
感謝您的鏈接到你的書。我一定會看看。很有趣,我正在閱讀語言規範,並在那裏找到了jquery和Window示例:[link](https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md#1.1)是「import 「應該以這種方式使用?你爲什麼認爲Visual Studio Code不支持它的用法?錯誤? – jpetitte
'你爲什麼認爲Visual Studio Code不支持它的用法? Bug?'我儘量不花費時間在非OSS項目上...所以誰知道:) – basarat
TypeScript語言規範的「import」部分的用法是什麼?我試圖確定是否應該使用該語法。 – jpetitte