首页 > 编程知识 正文

equiangular,angular应用开发实战

时间:2023-05-04 19:52:51 阅读:17158 作者:4217

sourcemapsdemystified(.js.map ) )。

生成angular APP应用程序时,将创建js文件和. js.map (源映射文件)文件。

实质上,源映射是一个JSON文件,其中包含将转换后的代码重新映射回原始源所需的所有信息。

在开发阶段调试TypeScript代码需要映射文件。 ngbuild----Prod--生产构建-无源映射ng build - dev build -存在源映射从技术上讲,源映射只是包含以下字段的JSON文件:

版本:表示源映射规范版本file。 此源文件映射所属的翻译文件的名称sourceRoot: basePath —源相对于此处的sources :原始源文件的路径(例如TypeScript文件) sourcesContent选项

如果源代码与此属性内联,则可以在不托管源代码的情况下检索它。 names :在代码中找到的方法或变量名称mappings :这是整个魔术发生的地方。 技术上,映射属性是一个非常大的字符串,包含Base64 VLQ可变长度数量的值。 这些值有助于找到源文件中的原始位置。

Dev Build vs Production Build众所周知,默认情况下,dev build遵循jit编译来创建映射文件,但在生产内部版本中遵循aot编译,而不创建映射文件。

sourcemapsduringdevelopmentsourcemaps有助于在开发工具的webpack://下显示原始源代码。 现在可以打开app.component.ts并将断点放置在app.component.ts文件中。

尝试在没有sourcemap文件的情况下运行项目。 这类似于生产构建。 这是因为生产生成中没有映射文件。

ng serve --sourceMap=false

在哪里设置断点? 必须在转换的JavaScript文件中手动找到函数。 这很麻烦。

sourcemapexplorertoinstallforproject :

npminstallsource-map-explorer-- save-dev

to安装全局:

NPM安装源映射资源管理器

thesourcemapexplorerdetermineswhichfileeachbyteinyourminifiedcodecamefrom.itshowsyouatreeemapvisualizationtohelpyoudebudebugwhere

你可以通过这个视频学习。

更多大气紫菜原创文章来自《汪子熙》:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。