jquery.min.map 404 (Not Found)出错的原因及解决办法
Chrome 更新后出现了 jquery.min.map 404 (Not Found) 的信息
这个到底是什么东西?查询了一下,得到了以下资料
摘录一下內容
从 jQuery 1.9.0 版本后在原始代码里会有 @ sourceMappingURL=jquery.min.map
什么是Source map
简单说,Source map就是一个信息文件,里面存储着位置信息。也就是说,转换后的代码的每一个位置,所对应的转换前的位置。
有了它,出错的时候,除错工具将直接显示原始代码,而不是转换后的代码。这无疑给开发这带来了很大方便。
导致 jquery.min.map 404 原因
更新后 Chrome 自行开启了 Enable source maps 的选项但你又沒有放 Source map 导致找不到档案。
解决办法
解決方式1.
将 Developer Tools ->设置 Enable source maps 关闭
解決方式2.
下载同一版本的 source maps跟jquery.js同目录
source maps 会跟 jquery 同位置
Jquery 位置 http://code.jquery.com/jquery-1.10.2.min.js
source maps 位置 http://code.jquery.com/jquery-1.10.2.min.map
当打开引入jQuery脚本的页面时,在Chrome的控制台中报了“GET http://localhost/libs/jquery.min.map 404 (Not Found)”的错误。
刚开始以为是Chrome安装插件导致的错误,可是把引入换成jQuery开发版本时,错误就不见了。并且只有Chrome会有这个错误提示,FireFox、IE不会报错。
后来发现原来是jQuery脚本中 "//@ sourceMappingURL=jquery-1.10.2.min.map
" 这一行惹的祸。
如果是布置到生产环境中去,你可以把上面那行代码直接删掉。
如果是在开发环境中,你应该下载jquery-1.10.2.min.map文件,放到jQuery同级目录中去(需要对应的source map文件)。
如果想关掉错误提示,还可以在Chrome的Developer Tools的Setting中将Enable source maps取消选中。
为什么这行被注释掉的代码,会起作用呢?那么就需要了解一下什么是Source Map。
什么是Source Map
Source map就是一个Json格式的信息文件,里面储存着位置信息。也就是说,它是压缩后Js的一个字典文件。有了它,出错的时候,调试工具将直接显示原始代码,而不是压缩后的代码。这无疑给开发者带来了很大方便。
因为是Google自定义的规则,暂时只有基于Chromium开发的浏览器支持这个功能。