Оновлено та правильне рішення, щоб виправити це
На підставі відповіді від Tran Quang , я пішов до CHANGELOG.md з ionic-nativeі дізнався , що вони недавно оновили свій пакет для компіляції з кутовими 9.
Отже, вам потрібно оновити будь-які / всі залежності @ionic-native. Для цього подивіться на всі залежності у вашому package.gsonфайлі, які починаються з них, @ionic-native/і оновлюйте їх по черзі.
Наприклад, це моє package.gson:

Тому мені довелося виконати наступні команди, щоб оновити всі мої @ionic-nativeзалежності:
npm i @ionic-native/core@latest
npm i @ionic-native/camera@latest
npm i @ionic-native/firebase-x@latest
npm i @ionic-native/splash-screen@latest
npm i @ionic-native/status-bar@latest
Те саме ви маєте зробити для своїх @ionic-nativeзалежностей. Просто переконайтеся, що вони оновлюються мінімум до v5.21.5(оскільки кілька старих версій не працювали).
Ура 😀🎉🎊
Якщо з якихось причин ви не можете оновити свої @ionic-nativeзалежності, подивіться на мою оригінальну відповідь щодо різних способів вирішення /
Оригінальний відповідь
Для мене спрацювали наступні рішення. Не впевнений, чи їх ідеально додати, але сподіваюся, що команда Ionic це виправить, оскільки ці рішення не потрібні були, коли я модернізував звичайний додаток Angular до Angular 9.
Рішення 1
Вимкніть АОТ шляхом зміни "aot": trueв "aot: falseв angular.jsonфайлі. Я б не рекомендував цього, оскільки це покращує продуктивність програми Angular та покращує введення кодів помилок у режимі розробки.
Рішення 2
Якщо ви не хочете змінюватись angular.jsonі хочете виправити цю проблему ionic serveлише для цього , передайте --aot=falseпрапор ngкоманді за допомогою --:
ionic serve -- --aot=false
Рішення 3 (сліпий варіант)
Якщо жодне з вищезгаданих рішень не працює для вас, ви можете запустити команду, npm updateяка буде оновлювати буквально всі залежності від ваших package.json(це означає, що іонічні залежності також будуть оновлені).
Це сліпий варіант, тому що ви не матимете уявлення про те, які залежності оновлюються та які суттєві зміни в цих оновлених залежностях. Тому ви можете вирішити інші проблеми через це.
Отже, ви ризикуєте взяти цей ризик :) Ну, це варто зробити, якщо ваш додаток не настільки великий чи не використовуєте жодних кодів, які видаляються в нових залежностях.
Рішення 4 (останній і найгірший варіант)
Додати import '@angular/compiler';у main.tsфайл. Але це може збільшити розмір пакета.
Додатково
При оновленні іонного, ви можете зіткнутися з іншим питанням з - за неправильні importв polyfills.ts. Якщо так, перевірте src / zone-flags.ts відсутній у компіляції TypeScript після оновлення до Ionic 5