我是Angular的新手。我在tsconfig.json中看到了sourcemap,默认情况下它是"sourceMap": true。我几乎没有怀疑,发现this link很有用。我仍然有以下怀疑。我设置了"sourceMap": false,但在应用程序中找不到任何更改。如果我这样设置,实际更改是什么?
tsconfig.json
sourcemap
"sourceMap": true
"sourceMap": false
zrfyljdw1#
应用程序的运行方式不会发生任何变化。更改将体现在您的调试体验中。Source maps有助于调试代码。您使用TypeScript编写代码,编译器会将源代码转换为JavaScript。当您的应用在Firefox等浏览器中运行时,浏览器会运行JavaScript。即使浏览器运行JavaScript,如果您在Firefox中打开调试器,调试器将显示TypeScript源代码,并允许您在其中设置断点。调试器之所以能够做到这一点,是因为源代码Map将TypeScript源代码Map到JavaScript运行时代码。这就是源代码Map的作用:它们将源代码Map到运行时代码以允许在运行时调试源代码。
jw5wzhpr2#
sourceMap仅用于开发经验(调试),通常在生产构建中不需要这些文件,如果您检查angular.json,您会发现它为您设置为false
sourceMap
"configurations": { "production": { "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ], "optimization": true, "outputHashing": "all", "sourceMap": false, <---- "extractCss": true, "namedChunks": false, "aot": true, "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true }
laik7k3q3#
当sourceMap设置为false时,输出将在没有源Map文件的情况下生成。如果没有源Map文件,您将无法在浏览器上调试ts文件。
false
r7s23pms4#
sourcemap属性增强你的调试经验,即使浏览器不能理解typescript它管理Map你的typescript代码到javascript代码.如果在情况下我们需要禁用它我们需要修改在angular.json文件
{ "sourceMap": false, -- modify this attribute "fileReplacements": [ { "replace": "src/environments/environment.ts", "with": "src/environments/environment.prod.ts" } ] }
4条答案
按热度按时间zrfyljdw1#
应用程序的运行方式不会发生任何变化。
更改将体现在您的调试体验中。
Source maps有助于调试代码。您使用TypeScript编写代码,编译器会将源代码转换为JavaScript。当您的应用在Firefox等浏览器中运行时,浏览器会运行JavaScript。即使浏览器运行JavaScript,如果您在Firefox中打开调试器,调试器将显示TypeScript源代码,并允许您在其中设置断点。调试器之所以能够做到这一点,是因为源代码Map将TypeScript源代码Map到JavaScript运行时代码。这就是源代码Map的作用:它们将源代码Map到运行时代码以允许在运行时调试源代码。
jw5wzhpr2#
sourceMap
仅用于开发经验(调试),通常在生产构建中不需要这些文件,如果您检查angular.json,您会发现它为您设置为falselaik7k3q3#
当
sourceMap
设置为false
时,输出将在没有源Map文件的情况下生成。如果没有源Map文件,您将无法在浏览器上调试ts文件。r7s23pms4#
sourcemap属性增强你的调试经验,即使浏览器不能理解typescript它管理Map你的typescript代码到javascript代码.如果在情况下我们需要禁用它我们需要修改在angular.json文件