javascript - 在 Angular 中使用源映射生成生产版本 - CLI
问题描述
生产构建后如何保留源地图?
现在,我的命令如下所示:
"build-prod": "ng build --app=release -prod && cp -R lang dist"
我尝试将其更改为:
ng build --app=release --sourceMap=true -prod && cp -R lang dist
但没有任何改变。
如果我这样做:
ng build --sourcemap
我得到了 sourcemaps,但我得到的是 index.html 而不是 index.prod.html。
是否可以编辑第一个命令来构建源映射文件?
这是我的tsconfig.json
文件:
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
}
}
解决方案
你应该angular.json
像这样编辑你的
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false, // change to true
然后运行
ng build --prod
但我不建议您在生产中打开源映射,因为它会增加捆绑包的大小
推荐阅读
- javascript - mapStateToProps 中的道具在运行操作时不会更新 - Redux
- c++ - Bazel 条件编译
- git - Git: Workflow Dilemma - Rebase 到一个全新的分支?
- javascript - 无法通过 Webpack 捆绑 React 组件库,但它可以通过 Babel 工作
- python - 如何在 django 中使用在 mysql 中创建的存储过程或函数?
- java - jTable.setModel() 没有按预期工作
- python - 尝试绘制损失与时期的维度错误
- spectrogram - Librosa CQT:为什么这些简单的正弦波不能整齐地落入它们的频率区间?
- c++ - 如何使用 Cmake 构建基于 Qt 远程对象的项目
- qt - 孙子打破中继器