问题
What server does this Angular CLI command use, when using Angular CLI 1.6.0?
ng serve
Since webpack is now being used by the Angular CLI for the website bundling, does that mean ng-serve is using the webpack-dev-server (which is a Node.js Express server)? There is some indication in the following Q/A that ng serve possibly used to piggyback off a server used by Ember:
What happens when you run ng serve?
回答1:
Try ng eject
This command will override your package.json and also generates a file called webpack.config.js
in your root directory.
That will give you all the current webpack configuration that your project is using.
When you do that, in your package.json, this is what you'll find :
"scripts": {
"eject": "ddc eject",
"build": "webpack",
"start": "webpack-dev-server",
"test": "karma start ./karma.conf.js",
"pree2e": "webdriver-manager update --standalone false --gecko false --quiet",
"e2e": "protractor ./protractor.conf.js"
},
As you can see, npm start is using webpack-dev-server
.
NOTE: To undo your changes, use
git
, otherwise AngularCli doesn't provide a way of undoing
回答2:
Yup, its using webpack-dev-server. You can look at the source-code of the ng eject
command:
https://github.com/angular/angular-cli/blob/6449a753641340d8fc19a752e1a1ced75f974efa/docs/documentation/1-x/eject.md
来源:https://stackoverflow.com/questions/47686176/what-server-does-ng-serve-use-when-using-angular-cli-1-6-0