exposify

browserify transform that exposes globals added via a script tag as modules so they can be required.

exposify

browserify transform that exposes globals added via a script tag as modules so they can be required.

<!-- index.html -->
<head>
  <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/three.js/r61/three.min.js"></script> 
  <script type="text/javascript" src="http://code.jquery.com/jquery-2.0.3.min.js"></script> 
  [..]
// main.js 
var $ = require('jquery')
  , THREE = require('three')
 
console.log('THREE revision: ', THREE.REVISION);
console.log('jquery version: ', $().jquery);
var browserify = require('browserify');
 
// configure what we want to expose 
var exposeConfig = { expose: { jquery: '$', three: 'THREE' } };
 
browserify()
  .require(require.resolve('./main'), { entry: true })
  .transform('exposify', exposeConfig)
  .bundle({ debug: true })
  .pipe(fs.createWriteStream(path.join(__dirname, 'bundle.js'), 'utf8'))

Using the EXPOSIFY_CONFIG environment variable:

EXPOSIFY_CONFIG='{ "jquery": "$", "three": "THREE" }' browserify --debug -t exposify main.js > bundle.js

Or using a Browserify transform option:

browserify --debug -t [ exposify --expose [ --jquery=$ --three=THREE ] ] exposify main > bundle.js

Or use it via browserify-shim which allows you to provide exposify config inside your package.json among other features.

npm install exposify

The config which is used by exposify to determine which require statemtents to replace and how. You need to set this or provide it via the EXPOSIFY_CONFIG environment variable.

 // setting from javascript
exposify.config = { jquery: '$', three: 'THREE' };
 # setting from command line
EXPOSIFY_CONFIG='{ "jquery": "$", "three": "THREE" }' browserify -t exposify ...
Source:

Exposes the expose function that operates on a string

Source:

Regex pattern of files whose content is exposified

Source:

browserify transform which exposes globals as modules that can be required.

Name Type Description
file string

file whose content is to be transformed

Source:

transform that replaces require statements found in the code with global assigments

Type TransformStream

generated with docme

MIT