如何从 Angular Universal 构建中删除 sourceMappingURL?

6
我正在使用这个仓库作为基础。我已经解决了几乎所有其他插件的错误,但是我无法解决这个错误。
在进行SSR构建时,没有其他插件会期望有.map文件,因为它是一个生产文件。但我不知道它从哪里潜入。
这是在server.js文件中引起错误的行。
margin: -1px 0; }\n\n/*# sourceMappingURL=swiper.component.css.map

我不想每次构建时手动删除它,那么如何解决这个问题以及可能的问题是什么。
错误:出了些问题,请稍后再试!错误 { Error: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'swiper.component.css.map' Error: Cannot match any routes. URL Segment: 'swiper.component.css.map' at ApplyRedirects.noMatchError (E:\xampp\htdocs\havemybooks\dist\server.js:146214:16) at CatchSubscriber.selector (E:\xampp\htdocs\havemybooks\dist\server.js:146195:29) at CatchSubscriber.error (E:\xampp\htdocs\havemybooks\dist\server.js:29486:31) at MapSubscriber.Subscriber._error (E:\xampp\htdocs\havemybooks\dist\server.js:20931:26)
更新:
我找到了罪魁祸首,是插件中的内联/*# sourceMappingURL=swiper.component.css.map */ 那么是否有webpack配置来替换已经存在的内联source maps。
我尝试使用webpack的--devtool false,但没有成功。

尝试移除\n\n(margin: -1px 0; }/*# sourceMappingURL=swiper.component.css.map)。 - Gaspar
是的,那会解决问题。但我不想每次构建时都手动执行它。 - Black Mamba
我认为是这个组件用于简化代码和占用更少空间,将\n\n放在了这一行。尝试查找该组件的一些配置(忘记名称了)。 - Gaspar
1个回答

8

这是angular cli中的一个bug。但是你可以在angular.json文件中手动指定不生成源映射。

"server": {
          "builder": "@angular-devkit/build-angular:server",
          "options": {
            ...
            "sourceMap": false
          },
         ...
 }

我认为在生产构建中它默认存在,因此指定它不会有太大影响。 - Black Mamba

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接