TypeScript 學習筆記 之 模組的解析
阿新 • • 發佈:2019-01-10
Namespacing
Namespace 的幾個特點。
- 宣告方式:
namespace Validation{
// 模組中其他程式碼
}
- namespace 可以在多個檔案中宣告。
要引用名稱空間中的其他組成部分。需要通過/// <reference path="Validation.ts"/>
來告訴編譯器。
在生成程式碼時,編譯器可以通過reference
宣告來確定他們的順序,這一方法同樣適用於生成<script>
標籤。
Aliases
可以通過 import q = x.y.z
的形式來為常用的名稱空間比較深的物件建立別名。
跟其他 JS 庫協同
類似模組,同樣也可以通過為其他 JS 庫使用了名稱空間的庫建立 .d.ts
檔案的宣告檔案,如為 D3
JS 庫,可以建立這樣的宣告檔案:
declare namespace D3{
export interface Selectors { ... }
}
declare var d3: D3.Base;
Namespaces 與 Modules 的區別
Namespaces 就好比是一個簡單的 JS 全域性物件。所以他們的區別是很明顯。
另外現在 Modules 才是推薦的組織程式碼結構的方式。除非很有必要使用一個名稱空間否則不不建議使用。
參考 :
Namespaces
Namespaces and modules
作者:一半晴天
連結:https://www.jianshu.com/p/e454ab636bcf
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。