在生产中使用css / javascript源地图的性能影响?
- 应该在生产环境中使用源图吗? 他们提供除debugging以外的任何好处吗?
- 他们是否影响应用程序加载时间,由于额外的服务器往返? 浏览器是否足够聪明,以加载和渲染应用程序后加载
.map
资产? - 如果浏览器找不到
.map
资源(404
错误),会不会有性能影响? 我应该关心修理吗?
请注意,如果复杂的concat / minify构build步骤,修复最后一个可能不如服务.map
资产那么简单。
使用Charles Web Proxy的快速testing显示, 只有在开发人员工具打开的情况下才能加载源地图。 如果您在未打开开发工具的情况下加载页面,则没有对源映射的http请求。
Chrome 43和Firefox 38的行为是一样的。
所以看起来他们对生产环境没有任何影响。
来自HTML5 Rocks:
基本上,这是一种将组合/缩小文件映射回未构build状态的方法。 当您为生产而构build时,同时缩小和组合您的JavaScript文件,您将生成一个包含原始文件信息的源地图。 当您在生成的JavaScript中查询特定的行和列号时,可以在返回原始位置的源地图中执行查找。 开发人员工具(目前WebKit每晚构build,Google Chrome或Firefox 23+)可以自动parsing源映射,并使其看起来好像运行的是未logging的和未组合的文件。
http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/