ng build --prod n'a PAS minify / uglify / supprimer des commentaires depuis Angulaire de la CLI 6
depuis que j'ai mis à niveau mon application Angular pour utiliser la version 6.x
, la compiler pour la production (en utilisant ng build --prod
, comme d'habitude) ne produit pas de mini js. Ce résultat en très grande taille vendor.js
(dans mon cas est presque 10 Mo).
si j'ouvre le fichier vendor.js
qui en résulte, je vois clairement que le code n'est pas minifié et les commentaires ne sont pas supprimés.
1 réponses
la question Est dans le dossier angular.json
.
sous la touche projects.MY_PROJECT_NAME.architect.build.configurations.production
, je manquais toutes les options qui viennent normalement par défaut dans la configuration production
quand vous créez un nouveau projet angulaire.
voici à quoi devrait ressembler la configuration production
pour corriger le problème:
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
pour certaines raisons, après mise à jour des versions précédentes de CLI angulaire, mon production
la configuration n'avait que la clé fileReplacements
. Ajouter les autres propriétés indiquées ci-dessus ( optimization
, outputHashing
, etc...) a résolu le problème pour moi.