Автор подробно описывает опыт его команды по миграции кода Angular из устаревших директив `NgIf`, `NgFor` и `NgSwitch` в новый синтаксис управления потоком. Он подчеркивает важность тщательного ручного обзора после запуска скрипта миграции, избегая больших запросов на слияние. Статья предупреждает против внесения не связанных изменений по очистке кода во время миграции, чтобы минимизировать риск. В частности, она предупреждает против преобразования отрицательных операторов `if` в блоки `else` и удаления избыточных тегов ``, так как это может привести к тонким ошибкам. Замена `let i = $index` считается безопасным изменением. Автор отмечает проблемы с отступами для inline-элементов после миграции и предлагает скрипт для выявления потенциальных проблем. Он подчеркивает преимущества использования `track` в циклах `@for` для улучшения производительности и описывает, как миграция обрабатывает блоки `ng-template else`. Автор также упоминает, что случайный HTML вне блоков `ngSwitchCase` может вызвать проблемы. Наконец, скрипт миграции не форматирует код хорошо и может оставлять пустые строки после удаления импортов.
dev.to
Lessons learned from Angular's control flow migration script
Create attached notes ...
