(資料圖片僅供參考)
在TypeScript中,和ECMAScript 2015一樣,任何包含頂級導入或導出的文件都被認為是一個模塊。相反,沒有任何頂級導入或導出聲明的文件被視為腳本(script,意義為js邏輯片段),其內(nèi)容可在全局作用域中使用(因此也可用于模塊)。
腳本暴露在全局作用域的var變量會追加到window上,可以通過訪問;而使用const、let聲明的變量僅僅存在于全局作用域中無法通過訪問,但是可以直接使用變量名使用。
模塊在它們自己的作用域中執(zhí)行,而不是在全局作用域中執(zhí)行。這意味著在模塊中聲明的變量、函數(shù)、類等在模塊外部是不可見的,除非它們使用導出標識符顯式導出。相反,要使用從不同模塊導出的變量、函數(shù)、類、接口等,必須使用導入語法導入。
ES模塊的知識不再贅述下面講解一下TypeScript的模塊系統(tǒng)。
TypeScript類型系統(tǒng)的成員幾乎都無法編譯成JS代碼,但是在編碼階段的類型檢查依賴于類型系統(tǒng)提供的線索,所以就出現(xiàn)了TS模塊系統(tǒng)獨有的“類型引入”,我們可以和ES模塊一樣通過“import”引入interface、type、class,也就是說我們可以混合引入ES對象和TS類型成員。為了方便打包框架解析我們可以使用type標識符將TS類型系統(tǒng)的成員,從而將ES對象和TS對象分開對待。
上述示例解釋了type關鍵字的使用方法,對于純類型引入我們可以將type關鍵字置于imort之后,表示引入的都是TS類型系統(tǒng)成員;對于不全都是類型的引入我們可以在類型前單獨標記type。type的意義在于表示僅作為類型標注使用,如果參與實例化(new class)則會報錯,且打包工具可以完全忽略此導入。
景觀資源和文化遺產(chǎn)豐富的黃河,有哪些國家級的主題精品線路?黃河
近日,臺風“杜蘇芮”和“卡努”席卷全國,帶來極端降雨天氣,京津冀局
“高效快遞先鋒,可靠馭享東風”,7月26日,東風商用車與申通快遞批
今年以來,天燃氣重卡成為商用車領域新的增量市場,市場銷量一路“
隨著“雙碳”戰(zhàn)略的不斷推進和國內(nèi)天然氣價格的持續(xù)走低,一場天然氣
2023博鰲亞洲論壇,將人們的關注點再次聚焦到ESG。面對世界之變、時
近期,隨著天燃氣價格持續(xù)下降以及經(jīng)濟回暖大趨勢,天然氣重卡以絕對性價比成為卡友們的心之所向。今年以來,天然氣重卡市場銷售火爆,東風
近日,第七屆中國汽車工程學會巴哈大賽(簡稱巴哈大賽)在湖北襄陽落下帷幕。該項賽事是繼中國大學生方程式汽車大賽(FSC)成功舉辦之后,中國
近年來,受國際能源價格大幅上漲影響,發(fā)揮壓艙石作用的新疆煤炭抓住契機,融入到全國統(tǒng)一大市場,有效緩解了國內(nèi)能源供應偏緊形勢。隨之而
近日,備受矚目的東風天龍GX上市發(fā)布會暨東風天龍中國卡車駕駛員大賽(第6季)暨東風陽光杯(第2屆)全國商用車維修技能競賽總決賽在車城十堰隆