diff options
-rw-r--r-- | README.md | 19 | ||||
-rw-r--r-- | tools/node.js | 6 |
2 files changed, 23 insertions, 2 deletions
@@ -628,6 +628,14 @@ console.log(result.code); // minified output console.log(result.map); ``` +To generate a source map with the fromString option, you can also use an object: +```javascript +var result = UglifyJS.minify({"file1.js": "var a = function () {};"}, { + outSourceMap: "out.js.map", + fromString: true +}); +``` + Note that the source map is not saved in a file, it's just returned in `result.map`. The value passed for `outSourceMap` is only used to set the `file` attribute in the source map (see [the spec][sm-spec]). @@ -663,6 +671,17 @@ var result = UglifyJS.minify("compiled.js", { The `inSourceMap` is only used if you also request `outSourceMap` (it makes no sense otherwise). +To set the source map url, use the `sourceMapUrl` option. +If you're using the X-SourceMap header instead, you can just set the `sourceMapUrl` option to false. +Defaults to outSourceMap: + +```javascript +var result = UglifyJS.minify([ "file1.js" ], { + outSourceMap: "out.js.map", + sourceMapUrl: "localhost/out.js.map" +}); +``` + Other options: - `warnings` (default `false`) — pass `true` to display compressor warnings. diff --git a/tools/node.js b/tools/node.js index 2ee7df21..20ecb473 100644 --- a/tools/node.js +++ b/tools/node.js @@ -43,6 +43,7 @@ exports.minify = function(files, options) { outSourceMap : null, sourceRoot : null, inSourceMap : null, + sourceMapUrl : null, fromString : false, warnings : false, mangle : {}, @@ -136,8 +137,9 @@ exports.minify = function(files, options) { var stream = UglifyJS.OutputStream(output); toplevel.print(stream); - if (options.outSourceMap && "string" === typeof options.outSourceMap) { - stream += "\n//# sourceMappingURL=" + options.outSourceMap; + var mappingUrlPrefix = "\n//# sourceMappingURL="; + if (options.outSourceMap && typeof options.outSourceMap === "string" && options.sourceMapUrl !== false) { + stream += mappingUrlPrefix + (typeof options.sourceMapUrl === "string" ? options.sourceMapUrl : options.outSourceMap); } var source_map = output.source_map; |