Angular 的組件與模塊看似好像與現(xiàn)有各種第三方類庫(例如:lodash、moment 等)使用上有點(diǎn)格格不入,這很大的原因是 TypeScript 造成的假象。三足鼎立的前端其實(shí)都是雷同的,不管是哪種前端框架都可以使用到這些第三方類庫。
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序定制開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了青原免費(fèi)建站歡迎大家使用!以下我將從另一個視角解釋 Angular 如何使用第三方類庫的一種經(jīng)驗做法。
一、寫在前面
在開始之前,需要先了解一下 TypeScript 模塊系統(tǒng) ——模塊是指在其自身作用域里執(zhí)行,而不是在全局作用域里;模塊間是依靠 export 和 import 建立關(guān)系。編譯器在編譯過程中,也是依賴這種關(guān)系來定位需要編譯的文件。
TypeScript 依然還是以 JavaScript 文件的形式發(fā)布類庫,這會導(dǎo)致類型無法表述,需要配合聲明文件對其進(jìn)行類型描述;因此聲明文件成了類庫一個必不可少的組成部分。
二、分類
Angular 使用 TypeScript 語言開發(fā),誠如上一小節(jié)講來說,要想讓一個類庫被運(yùn)用,要件是有沒有聲明文件。
有聲明文件
要分清類庫是否有聲明文件 *.d.ts,可以從兩個方面來確認(rèn)這件事:
1、類庫自帶
從 Npm 安裝一個依賴包后,可以直接檢查其庫的 package.json 是否包含 typings 節(jié)點(diǎn),例如 moment:
"typings": "./moment.d.ts"
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。