作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有两种方法可以设置源 map :将它们托管在站点上并在捆绑文件中引用或将它们直接上传到哨兵之类的服务。我正在努力完成后者。问题是,如果没有将文件路径写入捆绑文件,似乎无法使用 angular cli 生成源映射。
我的第一个想法是有两个构建 - 一个带有源 map 生成,一个没有。然后我会在没有源映射的情况下部署构建并将构建与它们一起上传到哨兵。这不起作用,因为包文件名不同(angular cli 使用文件散列作为缓存破坏的文件名,当您生成源映射时,它会在末尾添加 .map 文件的路径作为注释,导致散列和文档名称)。
我的另一个选择是使用源 map 构建,将它们上传到哨兵,然后在部署站点之前删除 map 文件。但问题是捆绑文件仍然包含对现在不存在的 map 文件的引用。这本身不应该是一个问题,但它可能会引发扩展程序或浏览器的问题,并且看起来像是一个黑客解决方案。
你会如何在构建过程中实现这样的东西?
最佳答案
如评论中所述,您可以启用 sourceMaps
在 angular.json
像这样的文件:
"configurations": {
"production": {
"sourceMap": {
"scripts": true,
"styles": true,
"hidden": true
},
另外,我建议您删除
.map
上传到哨兵之后和部署之前的文件。所以在你的 ci 添加这一行:
rm -rf dist/YOUR_PROJECT/*.map
关于angular - 如何使用 Angular CLI 生成源映射并将它们上传到 Sentry?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52489770/
我是一名优秀的程序员,十分优秀!