How to globally set the preserveWhitespaces option in Angular to false?

This will be false by default starting with angular 6

  • https://github.com/angular/angular/issues/22027

For now, in JIT mode we can set it as part of CompileOptions:

main.ts

platformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: false });

For aot we have to add this option to

tsconfig.app.json

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ],
  "angularCompilerOptions": {
    "preserveWhitespaces": false
  }
}

[email protected] example where you can find the corresponding commit

There is also feature request in angular-cli repo.


In order to set angular compiler options in AOT compile (ng serve --aot, ng build --prod) you must alter the tsconfig.app.json to include:

"angularCompilerOptions": {
  "preserveWhitespaces": true
},


In order to set angular compiler options in JIT compile (ng serve) you must alter main.ts specifically the bootstrapModule call:

platformBrowserDynamic().bootstrapModule(AppModule, {
  preserveWhitespaces: true
})
.catch(err => console.log(err));

Tags:

Angular