最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Angular教程:Angular編譯器選項

Angular 編譯器選項

使用 AoT 編譯 時,可以通過在 TypeScript 配置文件中 指定模板編譯器選項來控制如何編譯應(yīng)用程序。

網(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)還提供了烏海海南免費建站歡迎大家使用!

模板選項對象 ?angularCompilerOptions ?和為 TypeScript 編譯器提供標(biāo)準(zhǔn)選項的 ?compilerOptions ?對象是兄弟。

{
  "compileOnSave": false,
  "compilerOptions": {
    "baseUrl": "./",
    // ...
  },
  "angularCompilerOptions": {
    "enableI18nLegacyMessageIdFormat": false,
    "strictInjectionParameters": true,
    // ...
  }
}

用 extends 語法配置繼承方式

像 TypeScript 編譯器一樣,Angular 的 AOT 編譯器也支持對 TypeScript 配置文件中的 ?angularCompilerOptions ?進(jìn)行 ?extends?。?extends ?屬性位于頂層,和 ?compilerOptions ?和 ?angularCompilerOptions ?平級。

使用 ?extends ?屬性,TypeScript 配置可以從另一個文件中繼承設(shè)置。首先從基礎(chǔ)文件中加載配置項,然后被繼承自它的配置文件中的配置項覆寫。

比如:

{
    "extends": "./tsconfig.json",
    "compilerOptions": {
      "outDir": "./out-tsc/app",
    // ...
    "angularCompilerOptions": {
      "strictTemplates": true,
      "preserveWhitespaces": true,
      // ...
    },
  }

欲知詳情,參閱 TypeScript 手冊。

模板選項

以下選項可用于配置 AoT 模板編譯器。

allowEmptyCodegenFiles

如果為 ?true?,則生成所有可能的文件 —— 即使它們?yōu)榭铡DJ(rèn)值為 ?false?。Bazel 的構(gòu)建規(guī)則使用它來簡化 Bazel 規(guī)則跟蹤文件依賴性的方式。不要在 Bazel 規(guī)則之外使用此選項。

annotationsAs

修改 Angular 專有注解的生成方式,以改善搖樹優(yōu)化。非 Angular 注解不受影響??蛇x值為 ?static fields?(默認(rèn)值)或 ?decorators?。

  • 默認(rèn)情況下,編譯器會用類中的靜態(tài)字段替換裝飾器,這允許像 Closure 編譯器 這樣的高級搖樹器刪除未使用的類。
  • ?decorators ?值會將裝飾器保留在原處,這將使編譯速度更快。TypeScript 會生成對輔助器 ?__decorate? 的調(diào)用。使用 ?--emitDecoratorMetadata? 以支持運行時反射。
  • 注意:

    這樣生成的代碼將無法被正確地?fù)u樹優(yōu)化。

annotateForClosureCompiler

如果為 ?true?,則使用 Tsickle 來用 JSDoc 對生成的 JavaScript 代碼進(jìn)行注解,這些注釋是供 Closure 編譯器 使用的。默認(rèn)值為 ?false?。

compilationMode

指定要使用的編譯模式??梢允褂靡韵履J剑?/p>

模式

詳情

'full'

根據(jù)當(dāng)前使用的 Angular 版本生成完全 AOT 編譯的代碼。

'partial'

生成穩(wěn)定的中間代碼,適用于已發(fā)布的庫。

默認(rèn)值為 'full'。

disableExpressionLowering

如果為 ?true?(默認(rèn)值),則轉(zhuǎn)換在注解中使用或允許使用的代碼,以允許從模板的工廠模塊導(dǎo)入代碼。

如果為 ?false?,則禁用此重寫,你必須手動進(jìn)行重寫。

disableTypeScriptVersionCheck

如果為 ?true?,則在使用不受支持的 TypeScript 版本時,編譯器不會檢查 TypeScript 版本,并且不會報錯。不建議使用,因為不受支持的 TypeScript 版本可能具有未定義的行為。默認(rèn)值為 ?false?。

enableI18nLegacyMessageIdFormat

指示 Angular 模板編譯器為模板中用 ?i18n ?屬性標(biāo)出的消息生成舊版 ID。

除非你的項目依賴先前已用舊版 ID 生成的翻譯,否則請將此選項設(shè)置為 ?false?。默認(rèn)值為 ?true?。

Ivy 之前版本的消息提取工具為所提取的消息 id 生成了多種舊格式。這些消息格式存在許多問題,比如對空白字符的處理和對模板原始 HTML 內(nèi)部信息的依賴。

新的消息格式對空白字符的改動更寬容,在所有翻譯文件格式中都相同,并且可以直接通過調(diào)用 ?$localize? 生成。這允許應(yīng)用程序代碼中的 ?$localize? 消息使用與組件模板中 ?i18n ?消息完全相同的 id。

enableResourceInlining

當(dāng)為 ?true ?時,將所有 ?@Component? 裝飾器中的 ?templateUrl ?和 ?styleUrls ?屬性替換為 ?template ?和 ?styles ?屬性中的內(nèi)聯(lián)內(nèi)容。

啟用后,?ngc ?的 ?.js? 輸出不會包含任何惰性加載的模板或樣式 URL。

對于使用 CLI 生成的庫項目,dev 配置下默認(rèn)為 ?true?。

enableLegacyTemplate

如果為 ?true?,則啟用 Angular 4.0 中為了避免與同名的 DOM 元素沖突而不推薦使用的 ?