遷移

遷移到控制流程語法

控制流程語法自 Angular v17 起提供。新語法直接內建於範本中,因此你不再需要匯入 CommonModule。

此原理圖會把應用程式中所有現有程式碼,遷移為使用新的控制流程語法。

使用以下指令執行此原理圖:

ng generate @angular/core:control-flow

設定選項

這項遷移支援幾個選項,可依你的具體需求微調遷移方式。

--path

依預設,遷移會更新你整個 Angular CLI 工作區。 你可以使用這個選項,把遷移限制在特定的子目錄。

--format

依預設,遷移會重新格式化它所觸及的範本。 停用這個選項,可以保留你現有的範本格式。

破壞性變更

@for 的檢視重用

如果 @for 區塊的 track 運算式中用到的屬性發生變化,但物件參照維持不變(就地修改),Angular 會更新檢視的繫結(包括元件的輸入),而不是銷毀並重新建立該元素。

這與 *ngFor 不同:在類似情況下,如果 trackBy 函式回傳了不同的值,*ngFor 會對該元素執行重新掛載(銷毀並重新建立)。