javascript - 如何调试生产 Angular2/Typescript 应用程序?

标签 javascript debugging angular typescript

<分区>

我正着手使用 Angular2 和 Typescript 构建一个新的应用程序,以前从未同时使用过这两种技术(但分开使用过,所以我有一些经验)。

我的问题是,如果 Typescript 编译器将您的代码转换为 JavaScript,那么应用程序的客户端如何调试,我最终得到大量机器生成的代码(有时看起来像机器生成的代码)代码)。

最佳答案

Typescript 是一个转译器,也可以为您生成源映射。 typescript 输出与源本身并没有太大不同。您始终可以只调试 js 文件。

但是,如果您有一个大型捆绑的 js 文件并且想要调试单个 ts 文件,则需要导出源映射。

Typescript 有几个 sourceMapping 标志。参见 https://www.typescriptlang.org/docs/handbook/compiler-options.html

所有当前的网络浏览器都可以加载源映射并将断点映射回源文件。

您可以将源映射和源捆绑为 .js 文件的一部分。 (注意:这会使 js 文件变大)

tsc --sourceMap --inlineSources --inlineSourceMaps

或者,如果您的网络服务器可以提供您可以设置的源 .ts 文件和 .map 文件

tsc --sourceMap --sourceRoot <root of src>

第二个选项导致 js 文件在末尾带有额外的 sourceMappingUrl 注释,但浏览器的开发工具必须查找 .map 文件和源文件。

关于javascript - 如何调试生产 Angular2/Typescript 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40643324/

相关文章:

html - CSS 图像悬停在水平方向上有效,但在垂直方向上无效

angular - 如何在带 Angular ionic 项目上导入 npm semver?

angular - Fontawesome 5 与 Angular 2+

javascript - Angular nvd3 MultiChart X 轴双 Y 轴校准问题

javascript - 如何避免 JavaScript 中大数的科学记数法?

python - pycharm 调试器控制台无法更改变量的值

css - 如何重叠组件?

javascript - 没有 FormPanel 的 Google Apps 脚本 FileUpload()?

javascript - 如何将 Skeleton.css 添加到我的 React 应用程序?

javascript - 如何在带有 Chrome 调试的 VS Code 中启用文件的可编辑调试?