Je ne vois que des demi-solutions temporaires, donc je vais apporter plus de lumière sur cette question.
J'ai rencontré ces problèmes sur quelques projets et cela est probablement dû à la façon dont votre application est écrite. Dans mon cas, il y avait des problèmes de compilation scss et une mauvaise gestion des NgModules. Malheureusement, vous ne pouvez pas nous montrer l'ensemble de l'application, je suppose.
Je recommande quelques choses :
- Utilisez webpack-bundle-analyzer et corrigez tout ce que vous trouverez grâce à cet outil (il est possible que vous compiliez des choses par erreur ou que vous n'en ayez pas besoin du tout).
- Vérifiez vos styles globaux. Il est important de savoir comment vous importez ces styles, vous devez ÉVITER les duplications de styles importés et les dépendances circulaires. Il est facile de passer à côté du fait que vous importez un fichier scss qui en importe un autre, etc. Je vous recommande d'avoir juste UN fichier avec les imports (l'ordre des imports compte), alors il est facile de déboguer le temps de compilation de ces styles. Et dans les composants, vous n'importerez jamais ce fichier qui importe tout mais seulement les styles/mixins dont vous avez réellement besoin.
- Vérifiez quelles bibliothèques/styles/scripts vous avez ajoutés dans angular.json dans les scripts, styles et stylePreprocessorOptions. Tout ce genre de choses peut ralentir le temps de construction.
- Vous voulez peut-être essayer dart sass plutôt que node sass ? Si c'est le cas, installez fibers, désinstallez node-sass et essayez de compiler.
- Vérifiez vos NgModules. Sont-ils tous correctement importés ? Regardez à nouveau dans le bundle javascript résultant. N'y a-t-il aucune duplication que vous souhaitez éviter dans le bundle résultant ?
- Je recommande de réduire votre application uniquement sur le core AppModule et peut-être les styles... puis ajoutez (ou même supprimez des styles ou d'autres choses) progressivement plus de choses... et compilez. Vous déboguerez le problème de cette manière, trouverez le problème et le résoudrez.
Des choses comme celles-ci se produisent lorsque l'application grandit et que personne n'y prête attention, mais beaucoup de ces choses sont faciles à négliger. Les gens disent alors qu'Angular est mauvais et passent à d'autres bibliothèques/frameworks, mais c'est simplement notre incompréhension du génie et de la complexité d'Angular qui nous limite. Bonne chance ! :-)