应用 sourcemap 时出现的小乌龙。
选型与区别
具体选型的区别在文章末尾 doc 中有详细介绍。
乌龙
在实践的时候,在 chrome 中发现代码总是会被解析,但我从 network 中并没有发现其去加载对应的 map 文件,当时觉得很神奇。
后面直接改成 none 值后,代码就不会被解析了。
结论:浏览器会自动根据 sourceURL 去下载 map 文件,然后应用解析。但这个过程是隐式的,不会在 network 中显示。
生产环境
对于生产环境而言,以下是常用选项
- none:不生成 source map
- source-map:整个 source map 作为一个单独的文件生成。它为 bundle 添加了一个引用注释,以便开发工具知道在哪里可以找到它。
- hidden-source-map: 与 source-map 相同,但不会为 bundle 添加引用注释。如果你只想 source map 映射那些源自错误报告的错误堆栈跟踪信息,但不想为浏览器开发工具暴露你的 source map,这个选项会很有用。你不应将 source map 文件部署到 web 服务器。而是只将其用于错误报告工具。
- nosources-source-map - 创建的 source map 不包含 sourcesContent(源代码内容)。它可以用来映射客户端上的堆栈跟踪,而无须暴露所有的源代码。这仍然会暴露反编译后的文件名和结构,但它不会暴露原始代码。