AngularCli: disable minification

Angular Cli

Angular Cli Problem Overview


Is there a way to disable the minification in AngularCli?

After I launch the command ng build --prod I need to have all files.js, in dist folder, separate and legible.

Angular Cli Solutions


Solution 1 - Angular Cli

Just do:

ng build --prod --optimization=false

That seems to do it. For more information see: https://github.com/angular/angular-cli/wiki/build

This is valid for angular 6.*

Solution 2 - Angular Cli

Note: If you use ng serve through some package.json run target, according to the manpage of Angular6 correspoding switch for this is:

ng serve --optimization=false

will speedup this bs in development noticeable

Solution 3 - Angular Cli

ng build --build-optimizer=false

Above command Enables '@angular-devkit/build-optimizer' optimizations when using the 'aot' option.

More details at https://angular.io/cli/build

Solution 4 - Angular Cli

The responses from 2018 are now outdated. For the more recent versions of Angular (13 as of this writing), the --optimization=false flag is deprecated. Instead, you can achieve the same result as follows:

In your angular.json, you can configure it for specific environment (e.g. no optimization in dev, but optimization in prod).

      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "optimization": false,
            ...
          }
        }
      }

You can also have more granular control on which optimizations are enabled:

"optimization": {
  "scripts": true,
  "fonts": false,
  "styles": false
}

Those too can be further refined (e.g. for styles: minify, inlineCritical)

More details here: https://angular.io/guide/workspace-config#optimization-configuration

Solution 5 - Angular Cli

In order to get the plain and separate and un-minified js files you just need to compile them with typescript (tsc) to your dist directory.

There is no need to use the cli build. By design Angular CLI bundles all javascript files when building.

From the cli build documentation:

> All builds make use of bundling and limited tree-shaking, while --prod builds also run limited dead code elimination via UglifyJS.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionDanieleeeView Question on Stackoverflow
Solution 1 - Angular CliRossView Answer on Stackoverflow
Solution 2 - Angular ClimschmoockView Answer on Stackoverflow
Solution 3 - Angular CliChetan LaddhaView Answer on Stackoverflow
Solution 4 - Angular CliJulienView Answer on Stackoverflow
Solution 5 - Angular ClikampsjView Answer on Stackoverflow