为什么Chrome会忽略我的JS源地图

时间:2015-08-01 19:27:54

标签: javascript google-chrome minify uglifyjs source-maps

我正在尝试使用uglifyjs合并我的JS文件,并且它正在生成源图。但是chrome似乎甚至没有尝试加载地图,并且在堆栈跟踪中显示缩小的文件。

这是我的目录,包括来源:

js-min/   ← here should go the minified files
js-src/
├── app
│   ├── dialog.js
│   ├── jslang-data.js
│   ├── jslang.js
│   ├── planner.js
│   ├── slider.js
│   ├── timed_refresh.js
│   ├── top_panel.js
│   └── utils.js
└── lib
    --snip--

这是我用来构建文件app.min.js

的脚本
# --- Output file ---
outfile="js-min/app.min.js"
outfile_map="js-min/app.min.js.map"

# --- Sources ---
src=""

src+=" js-src/app/utils.js" # contains core mods
src+=" js-src/app/timed_refresh.js"
src+=" js-src/app/jslang-data.js"
src+=" js-src/app/jslang.js"
src+=" js-src/app/dialog.js"
src+=" js-src/app/slider.js"
src+=" js-src/app/planner.js"

src+=" js-src/app/top_panel.js"

# sources variable is expanded to arguments
uglifyjs $src -o "$outfile" --compress --source-map "$outfile_map"

生成的源图在这里(稍微缩短):

{
    "version": 3,
    "file": "js-min/app.min.js",
    "sources": ["js-src/app/utils.js", "js-src/app/timed_refresh.js", "js-src/app/jslang-data.js", "js-src/app/jslang.js", "js-src/app/dialog.js", "js-src/app/slider.js", "js-src/app/planner.js", "js-src/app/top_panel.js"],
    "names": ["String", "prototype", "format", "formatted", "this", "arguments", "length", "isArray", "i", "replace", "pad_num", "number", "len", "padchar", "pad_char", "pad", "Array", "join", "slice", "pad2", "Function", "bind", "parent", "f", "args", "a", "temp", "apply", ....],
    "mappings": "AAIAA,OAAOC,UAAUC,OAAS,WACzB,GAAIC,WAAYC,IAEhB,...."
}

如果您想查看完整文件 - > gist

源地图有问题吗?我是否为uglifyjs使用了错误的标记?

0 个答案:

没有答案