Aktualisierte und korrekte Lösung, um dies zu beheben
Basierend auf der Antwort von Tran Quang habe ich mir CHANGELOG.md von angesehen ionic-nativeund erfahren, dass sie kürzlich ihr Paket aktualisiert haben, um es mit Angular 9 zu kompilieren.
Daher müssen Sie alle Abhängigkeiten von aktualisieren @ionic-native. Sehen Sie sich dazu alle Abhängigkeiten in Ihrer package.gsonDatei an, die mit beginnen, @ionic-native/und aktualisieren Sie sie nacheinander.
Zum Beispiel ist dies mein package.gson:

Daher musste ich die folgenden Befehle ausführen, um alle meine @ionic-nativeAbhängigkeiten zu aktualisieren :
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
Gleiches müssen Sie für Ihre @ionic-nativeAbhängigkeiten tun . Stellen Sie nur sicher, dass diese mindestens auf aktualisiert werden v5.21.5(da einige alte Versionen nicht funktionierten).
Prost 😀🎉🎊
Wenn Sie Ihre @ionic-nativeAbhängigkeiten aus irgendeinem Grund nicht aktualisieren können , lesen Sie meine ursprüngliche Antwort für verschiedene Problemumgehungen / Lösungen
Ursprüngliche Antwort
Für mich haben die folgenden Lösungen funktioniert. Ich bin mir nicht sicher, ob sie perfekt zum Hinzufügen sind, hoffe aber, dass das Ionic-Team dies behebt, da diese Lösungen nicht benötigt wurden, als ich meine einfache Angular-App auf Angular 9 aktualisiert habe.
Lösung 1
Schalten Sie den AOT aus, indem Sie "aot": truezu "aot: falseIn- angular.jsonDatei wechseln . Ich würde dies nicht empfehlen, da dies die Leistung der Angular-App verbessert und das Abfangen von Fehlercodes im Entwicklungsmodus verbessert.
Lösung 2
Wenn Sie sich nicht ändern möchten angular.jsonund dieses Problem ionic servenur beheben möchten , übergeben Sie das --aot=falseFlag an den ngBefehl, indem Sie Folgendes verwenden --:
ionic serve -- --aot=false
Lösung 3 (blinde Option)
Wenn keine der oben genannten Lösungen für Sie funktioniert, können Sie einen Befehl ausführen, npm updateder buchstäblich alle Abhängigkeiten von Ihnen package.jsonaktualisiert (dh, die ionischen Abhängigkeiten werden ebenfalls aktualisiert).
Dies ist eine blinde Option, da Sie nicht wissen, welche Abhängigkeiten aktualisiert werden und welche Änderungen in diesen aktualisierten Abhängigkeiten vorgenommen werden. Aus diesem Grund können Sie möglicherweise andere Probleme beheben.
Es liegt also an Ihnen, dieses Risiko einzugehen :) Nun, dies lohnt sich, wenn Ihre App nicht so groß ist oder keine Codes verwendet, die in den neueren Abhängigkeiten entfernt wurden.
Lösung 4 (die letzte und schlechteste Option)
Fügen Sie import '@angular/compiler';in main.tsDatei. Dies kann jedoch die Bündelgröße erhöhen.
Extra
Während Ionic aktualisieren, könnten Sie ein anderes Problem konfrontiert wegen falsch importin polyfills.ts. Wenn ja, überprüfen Sie, ob src / zone-flags.ts nach dem Upgrade auf Ionic 5 in der TypeScript-Kompilierung fehlt