CommonJS Require
browser-side CommonJS require() function.
Usage
Add commonjs-require.js
as script src to your site.
Example
<script src="commonjs-require.js"></script>
<script>
require.register("module", function(exports, require, module){
/* Some Module content */
module.exports = "content"
})
alert(require('module'))
</script>
This will alert content
Automated wrapping into require.register
Why not browserify?
Browserify requires (scnr) that you use some magic AST/require.resolve mechanism to built your CommonJS package/files for the browser. This is really complex - especially if you have to bundle different files for different sections of your website, use dynamic requires or have circular dependencies.
API
require(name)
— loads registered module and returns itsexports
.require.register(name, fn)
— registers new module.fn
should have signatureexports, require, module
.require.list()
— lists all registered modules.
Node Module support
commonjs-require emulates the actual loading mechanism from Node.js in that it delegates all require() calls to Module._load() (Module is exposed via the "module" module). This improves support for modules which rely on the Node module system implementation (for example Mockery).
Module API
Module._load(request, parent)
- does the actual module loading and instantiationModule._cache
- is the cache of loaded modules, can be cleared by assigning an empty objectModule._resolveFilename
- determines the actual module id (e.g. adds "index" if its missing)
License
MIT
- Copyright (c) 2014 efa GmbH
- Copyright (c) 2013-2014 Paul Miller