UPDATE: December 2018 (see 'Aniket' answer)
With Angular CLI 6 you need to use builders as ng eject is deprecated and will soon be removed in 8.0
UPDATE: June 2018: Angular 6 does not support ng eject**
UPDATE: February 2017: use ng eject
UPDATE: November 2016: angular-cli now only use webpack. You only need install normally with npm install -g angular-cli. "We changed the build system between beta.10 and beta.14, from SystemJS to Webpack.", but actually i use angular-cli just to firs structure and folders and then anymore, i use webpack config manually
I've installed angular cli with this:
npm install -g angular-cli@webpack
When I worked with angular1 and web pack , i used to modify "webpack.config.js" file to execute all the task and plugins, but i don't see on this project created with angular-cli who does it work. it's magic?
I see Webpack is working when i do:
ng serve
"Version: webpack 2.1.0-beta.18"
but i don't understand the way that angular-cli config works...
There's a nice way to eject webpack.config.js from angular-cli. Just run:
$ ng eject
This will generate webpack.config.js in the root folder of your project, and you're free to configure it the way you want. The downside of this is that build/start scripts in your package.json will be replaced with the new commands and instead of
$ ng serve
you would have to do something like
$ npm run build & npm run start
This method should work in all the recent versions of angular-cli (I personally tried a few, with the oldest being 1.0.0-beta.21, and the latest 1.0.0-beta.32.3)