angular配置

工作空間的配置文件用途:
angular.json:為工作區(qū)中的所有項目指定CLI的默認配置,包括CLI要用到的構(gòu)建、啟動開發(fā)服務器和測試工具的配置項。
package.json:配置工作空間中的所有項目可用的npm依賴包。
package-lock.json:提供npm客戶端安裝到node_modules的所有軟件包的版本信息。
tsconfig.json:工作空間中各個項目的默認TypeScript配置。
src/:根目錄的源文件

src下的子文件夾:

app/:包含應用邏輯和數(shù)據(jù)的組件文件
assets/:包含要在構(gòu)建應用時應該按原樣復制的圖像和其他的靜態(tài)資源文件。
environments/:包含特定目標環(huán)境的構(gòu)建配置選項,默認情況下,有一個無名的標準開發(fā)環(huán)境和一個生產(chǎn)環(huán)境。
index.html:當有人訪問你的站點時,提供服務的主要html頁面,cli會在構(gòu)建應用的時候自動添加所有的js和css文件。
main.ts:應用的主要切入點,默認用JIT編譯器編譯應用,然后引導應用的根模塊(AppModule)在瀏覽器中運行。

應用配置文件

tsconfig.app.json:應用專屬的typescript配置。

angular.json文件結(jié)構(gòu)

version:該配置文件的版本
newProjectRoot:用于創(chuàng)建新工程的位置
defaultProject:當命令中沒有指定參數(shù)時,要使用的默認工程名。
schematics:用于定制ng generate子命令在本工作空間中的默認選項。
projects:對于工作區(qū)中的每個項目都會包含一個子分區(qū),子分區(qū)中是每個項目的配置項。

項目配置選項

每個項目都有下面的頂級配置屬性

"my-app": {
  "root": "",
  "sourceRoot": "src",
  "projectType": "application",
  "prefix": "app",
  "schematics": {},
  "architect": {}
}

其中:
root:該項目的根文件夾,相對于工作區(qū)文件夾的路徑。初始應用的值為空,因為它位于工作區(qū)的頂層。
sourceRoot:該項目源文件的根文件夾
projectType:“application”或者“l(fā)ibrary”
prefix:angular所生成的選擇器的前綴字符串
schematics:為該項目自定義ng generate子命令的默認選項
architect:為項目的各個構(gòu)建器目標配置默認值。
architect是指cli用來根據(jù)所提供的配置執(zhí)行復雜任務(如編譯和測試運行)的工具。
architect中配置屬性:

"architect": {
  "build": { },
  "serve": { },
  "e2e" : { },
  "test": { },
  "lint": { },
  "extract-i18n": { },
  "server": { },
  "app-shell": { }
}

其中
build:為ng build命令的選項配置默認值
serve:會覆蓋構(gòu)建默認值,并為ng serve命令提供額外的服務器默認值。除了ng build命令的可用選項外,還增加了與開發(fā)服務器有關(guān)的選項。
build中的配置屬性:
builder:用于構(gòu)建此目標的構(gòu)建工具的npm包,默認是
@angular-devkit/build-angular:browser,它使用的是webpack打包器。
options:包含構(gòu)架選項的默認值,當沒有指定命名的備用配置時使用。
configurations:定義并命名針對不同目標的備用配置,為每個命名配置都包含一節(jié),用于設置該目標環(huán)境的默認選項。默認情況下,會定義一個production配置,ng build命令會使用這個配置下的--prod選項,這里的production配置會設置各種默認值來優(yōu)化應用,例如打包文件、最小化多余空格等。你可以定義和命名適用于你的開發(fā)工程的其他備用配置,例如dev,test。
具體參考:https://angular.cn/guide/workspace-config#build-configs

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容