Da ich meine Angular= App aktualisiert habe, um Angular CLI-Version 6.x
Zu verwenden, kompiliere ich sie für die Produktion (mit ng build --prod
) (wie üblich) erzeugt keine verkleinerten Js. Dies führt zu einer sehr großen vendor.js
- Größe (in meinem Fall sind es fast 10 MB).
Wenn ich die resultierende vendor.js
- Datei öffne, kann ich deutlich erkennen, dass der Code nicht minimiert ist und die Kommentare nicht entfernt werden.
Das Problem ist in angular.json
Datei.
Unter dem Schlüssel projects.MY_PROJECT_NAME.architect.build.configurations.production
, Mir fehlten alle Optionen, die normalerweise standardmäßig in der production
-Konfiguration enthalten sind, wenn Sie ein neues angular Projekt erstellen.
So sollte die production
-Konfiguration aussehen, um das Problem zu beheben:
"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
},
Aus bestimmten Gründen hatte meine production
-Konfiguration nach dem Upgrade von früheren Angular= CLI-Versionen nur den fileReplacements
-Schlüssel. Hinzufügen der anderen oben gezeigten Eigenschaften (optimization
, outputHashing
, etc ...) löste das Problem für mich.