Solução atualizada e correta para corrigir isso
Com base na resposta de Tran Quang , eu fui ver o CHANGELOG.md de ionic-nativee vim a saber que eles atualizado recentemente seu pacote para compilar com Angular 9.
Portanto, você precisa atualizar qualquer / todas as dependências de @ionic-native. Para isso, observe todas as dependências do seu package.gsonarquivo que começam com @ionic-native/e atualize-as uma a uma.
Por exemplo, este é o meu package.gson:

Então, eu tive que executar os seguintes comandos para atualizar todas as minhas @ionic-nativedependências:
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
O mesmo que você precisa fazer por suas @ionic-nativedependências. Apenas verifique se eles são atualizados no mínimo para v5.21.5(porque alguns lançamentos antigos não estavam funcionando).
Saúde 😀🎉🎊
Se, por algum motivo, você não puder atualizar suas @ionic-nativedependências, consulte minha resposta original para obter diferentes soluções / soluções alternativas ⬇️
Resposta original
Para mim, as seguintes soluções funcionaram. Não tenho certeza se eles são perfeitos para adicionar, mas espero que a equipe Ionic resolva isso, pois essas soluções não eram necessárias quando eu atualizei meu aplicativo Angular simples para o Angular 9.
Solução 1
Desligue o AOT alterando "aot": truepara "aot: falseno angular.jsonarquivo. Eu não recomendaria isso, pois isso melhora o desempenho do aplicativo Angular e melhora a captura de códigos de erro no modo de desenvolvimento.
Solução 2
Se você não deseja alterar angular.jsone deseja corrigir esse problema ionic serveapenas, passe o --aot=falsesinalizador para o ngcomando usando --:
ionic serve -- --aot=false
Solução 3 (opção cega)
Se nenhuma das soluções acima estiver funcionando para você, você pode executar um comando npm updateque atualizará literalmente todas as suas dependências package.json(isto significa, as dependências iônicas também serão atualizadas).
Essa é uma opção cega, porque você não terá idéia de quais dependências são atualizadas e quais são as alterações mais recentes nessas dependências atualizadas. Portanto, você pode acabar corrigindo outros problemas por causa disso.
Portanto, é sua responsabilidade arriscar :) Bem, vale a pena fazer isso se seu aplicativo não for tão grande ou não usar códigos removidos nas dependências mais recentes.
Solução 4 (a última e a pior opção)
Adicionar import '@angular/compiler';no main.tsarquivo. Mas isso pode aumentar o tamanho do pacote.
Extra
Ao atualizar Ionic, você pode enfrentar outro problema por causa de errado importem polyfills.ts. Se sim, confira src / zone-flags.ts que está faltando na compilação TypeScript após a atualização para o Ionic 5