包详细信息

umd

ForbesLindesay4.3mMIT3.0.3

Universal Module Definition for use in automated build systems

自述文件

umd

Universal Module Definition for use in automated build systems

  • simple synchronous wrapping of a string
  • return style module support
  • CommonJS support
  • prevents internal UMDs from conflicting

Build Status Dependency Status NPM version

Source Format

In order for the UMD wrapper to work the source code for your module should return the export, e.g.

function method() {
  //code
}
method.helper = function () {
  //code
}
return method;

For examples, see the examples directory. The CommonJS module format is also supported by passing true as the second argument to methods.

API

options:

  • commonJS (default: false) - If commonJS is true then it will accept CommonJS source instead of source code which returns the module.

umd(name, source, [options])

The name should the the name of the module. Use a string like name, all lower case with hyphens instead of spaces.

If source should be a string, that is wrapped in umd and returned as a string.

umd.prelude(module, [options])

return the text which will be inserted before a module.

umd.postlude(module, [options])

return the text which will be inserted after a module.

Command Line

Usage: umd <name> <source> <destination> [options]

Pipe Usage: umd <name> [options] < source > destination

Options:

 -h --help     Display usage information
 -c --commonJS Use CommonJS module format

You can easilly pipe unix commands together like:

 cat my-module.js | umd my-module | uglify-js > my-module.umd.min.js

Name Casing and Characters

The name passed to umd will be converted to camel case (my-library becomes myLibrary) and may only contain:

  • alphanumeric characters
  • $
  • _

The name may not begin with a number. Invalid characters will be stripped.

License

MIT

更新日志

3.0.1 / 2015-04-25

  • Document and test casing/sanitization behavior (thanks @bendrucker)

3.0.0 / 2015-02-04

  • remove dependency on ruglify (thanks to @zertosh)
  • add this as an additional fallback when looking for a global (thanks to @winterbe)
  • use options rather than true / false for whether to use CommonJS (with fallback for backwards compatibility).
  • support $ and _ in module names (thanks to @fitnr) (BREAKING CHANGE)
  • uglify as a pre-publish step - removing a dependency
  • brfs as a pre-publish step - allowing this module to be used from the browser.
  • remove support for streaming (BREAKING CHANGE)

2.1.0 / 2014-04-02

  • Check for definition of module as well as exports for CommonJS (fixes some custom RequireJS loaders)
  • Pass empty array to define for AMD

2.0.0 / 2013-12-29

  • Use module name as a namespace for globals if it contains .

1.3.1 / 2013-08-25

  • Update uglify-js

1.3.0 / 2013-08-01

  • Remove SES and Montage bootstrap
  • Add MIT LICENSE
  • Handle web workers global
  • Update uglify-js to fix npm warning

1.2.1 / 2013-06-07

  • Fix CLI

1.2.0 / 2013-06-07

  • Add CLI

1.1.1 / 2013-04-15

  • Update through

1.1.0 / 2013-03-31

  • Make Cammel Case less suprising/forcefull

1.0.0 / 2013-03-16

  • Initial Release