网站搜索

typescript - Angular TS SourceMaps 在 Chrome 调试器中无法使用


在没有任何配置更改的情况下,我现在无法在 Chrome 中调试 Angular TS 文件,无论是通过在开发者工具中设置手动断点,还是通过 debugger; 语句。情况事实如下:

  • 我正在 开发 模式下运行 Angular,不是 生产 模式
  • 我的 tsconfig 有 "sourceMap": true
  • CSS 地图工作正常(见下文)
  • debugger; 行根本没有被触发
  • 在开发者工具设置中已启用“启用 JavaScript 源映射”
  • 我也尝试过将本地目录添加到开发者工具,但只有 CSS 文件映射成功。

然而,奇怪的是,当我在Safari中打开应用程序时,debugger;断点会被触发,并且我可以在TS文件中正常设置手动断点。所以这让我认为这是Chrome的问题,而不是Angular配置的问题。

规格 => Chrome: 版本 75.0.3770.142(截至本帖为最新),Angular: 6.1.2(项目要求,因此无法更新)

答案#1

在把这一切写下来之后,我意识到问题是由于 在开发者工具中加载了另一个 Angular 项目目录 引起的。自动映射查看的是这个其他项目的 src 目录,而不是我正在工作的当前项目。

  • CSS 映射是因为另一个项目使用 .scss 而不是 .css,所以那里没有找到匹配项
  • TS 调试在 Safari 中工作,因为另一个项目尚未添加到 Safari 开发者工具中

如果有人知道今后如何避免这个问题,请告诉我!我经常同时处理多个项目,所以在切换到新项目时不必移除每个项目会很好。