Angular 庫概覽

2022-07-20 10:17 更新

Angular 庫開發(fā)概述

許多應用都需要解決一些同樣的常見問題,比如提供統(tǒng)一的用戶界面、渲染數(shù)據(jù),以及允許數(shù)據(jù)輸入。開發(fā)人員可以為特定的領域創(chuàng)建一些通用解決方案,以便在不同的應用中重復使用。像這樣的解決方案就可以構建成 Angular 庫,這些庫可以作為 npm 包進行發(fā)布和共享。

Angular 庫是一個 Angular 項目,它與應用的不同之處在于它本身是不能運行的。必須在某個應用中導入庫并使用它。

這些庫擴展了 Angular 的基本功能。比如,要向應用添加響應式表單,請使用 ?ng add @angular/forms? 添加該庫的 npm 包,再從應用代碼中,從 ?@angular/forms? 庫中導入 ?ReactiveFormsModule?。同樣,把 ?Service Worker? 庫添加到 Angular 應用中是將應用轉換為漸進式 Web 應用程序(PWA)的步驟之一。Angular Material 是一個大型通用庫的典范,它提供了一些復雜、可復用,兼具高度適應性的 UI 組件。

任何一位應用開發(fā)者都可以使用這樣或那樣的庫,它們都已經由 Angular 團隊或第三方發(fā)布為 npm 包。

創(chuàng)建庫

如果已經開發(fā)出了適合復用的功能,你就可以創(chuàng)建自己的庫。這些庫可以在你的工作區(qū)中本地使用,也可以把它們發(fā)布成 npm 包,共享給其它項目或其它 Angular 開發(fā)者。這些包可以發(fā)布到 npm 服務器、一個私有的 npm 企業(yè)版服務器,或一個支持 npm 包的私有包管理系統(tǒng)。

是否把一些功能打包成庫是一種架構決策,類似于決定一個功能應該做成組件還是服務,或決定一個組件的范圍該有多大。

把功能打包成庫會強迫庫中的工件與應用的業(yè)務邏輯分離。這有助于避免各種不良實踐或架構失誤,這些失誤會導致將來很難解耦和復用代碼。

把代碼放到一個單獨的庫中比簡單地把所有內容都放在一個應用中要復雜得多。它需要更多的時間投入,并且需要管理、維護和更新這個庫。不過,當把該庫用在多個應用中時,這種復雜性就會得到回報。

注意:
這里所說的庫是為了供 Angular 應用使用的。 如果想把 Angular 的功能添加到非 Angular 應用中,可以使用 Angular 自定義元素。


以上內容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號