Question

I am looking for a way to prevent r.js (RequireJS' optimization script) from ugylyfying our JS-modules to maintain readability for debugging purposes. I expect the script (running on Node.js by the way) to have some command line option to be passed. Unfortunately, the documentation if this tool is rather poor.

Was it helpful?

Solution

Pass optimize=none on the command line to r.js, or include optimize: "none" in your build script.

eg:

({
    baseUrl: ".",
    paths: {
        jquery: "some/other/jquery"
    },
    name: "main",
    out: "main-built.js",
    optimize: "none"
})

See http://requirejs.org/docs/optimization.html for more information.

If you check the source, you will see that the default is set to "uglify". Here are the options which are accepted:

  • uglify: (default) uses UglifyJS to minify the code.
  • uglify2: in version 2.1.2+. Uses UglifyJS2.
  • closure: uses Google's Closure Compiler in simple optimization mode to minify the code. Only available if running the optimizer using Java.
  • closure.keepLines: Same as closure option, but keeps line returns in the minified files.
  • none: no minification will be performed.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top