32

The documentation is very brief with this topic:

ng eject ejects your app and output the proper webpack configuration and scripts

What is the purpose of this command?

Mistalis
  • 17,793
  • 13
  • 73
  • 97
John-Philip
  • 3,392
  • 2
  • 23
  • 52

2 Answers2

29

angular-cli is something magic, everything is done in a simple and automatic way.

But sometimes, you may want to act on how the package is done, add a plugin or you are simply curious to see the Webpack configuration on which it is based.

When running ng eject, you generate a webpack.config.json file. Looking at the file package.json you will see that the commands to launch have slightly changed:

ng serve --> npm start
ng build --> npm run build
ng e2e   --> npm run e2

If you want to undo ng eject, you will have to edit your .angular.cli.json file and set ejected to false:

"project": { 
  ...
  "ejected": false
}
Mistalis
  • 17,793
  • 13
  • 73
  • 97
9

ng eject basically get-rid of angular cli scripts and introduce webpack scripts in package.json, underlying webpack.config.js file mainly for comprehensive way to manage the project and it will be completely our responsibility to manage the project configurations after this.

A comparison of package.json scripts before and after is below, enter image description here

check https://medium.jonasbandi.net/to-use-angular-cli-or-not-187f87d0b550 for further read.

AGan
  • 457
  • 5
  • 12