我目前正在使用@ angular / cli @ 1.0.0-beta.32.3。我使用新的弹出功能来编辑webpack配置。现在我很困惑,我能够将参数传递给我的构建。
例如:我该怎么办?
ng build --prod
或ng test --code-coverage
?
我如何使用npm脚本执行这些操作。
答案 0 :(得分:2)
弹出后,angular-cli禁用ng-commands。但它确实为您提供了自己完成的基本设置。
如果你查看你的package.json,你会发现以下内容:
"scripts": {
"ng": "ng",
"start": "webpack-dev-server --port=4200",
"build": "webpack",
"test": "karma start ./karma.conf.js",
"lint": "ng lint",
"e2e": "protractor ./protractor.conf.js",
"prepree2e": "npm start",
"pree2e": "webdriver-manager update --standalone false --gecko false --quiet"
}
这些是angular-cli民众决定从现在开始构建项目所需的最少脚本。它们从您的命令行运行,前面有npm run
或yarn run
,具体取决于您的偏好。
因此,当您想运行webpack构建时,不再像以前那样运行ng build
,而是运行npm run build
。
要在webpack中构建生产,您需要为这些脚本添加一行:
"scripts": {
"ng": "ng",
"start": "webpack-dev-server --port=4200",
"build": "webpack",
"build:prod": "webpack -p", <-- add this line
"test": "karma start ./karma.conf.js",
"lint": "ng lint",
"e2e": "protractor ./protractor.conf.js",
"prepree2e": "npm start",
"pree2e": "webdriver-manager update --standalone false --gecko false --quiet"
}
现在,当您想要运行生产版本时,只需键入npm run build:prod
,webpack将以生产模式运行。
如果你弹出--prod,上面的意思并没有多大改变,因为我认为webpack.config.js会自动进入生产模式。
有关webpack -p
确切内容的更多信息,请参阅https://webpack.js.org/guides/production-build/