Skip to content

mairatma/babel-plugin-globals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

babel-plugin-globals

A babel plugin that exposes ES6 modules to global variables.

##Usage This is a babel plugin that converts ES6 modules into global variables. To use it, just add it to your package.json and pass it as a plugin when calling babel:

{
  "plugins": [
    ["globals", {
      "globalName": 'myGlobal'
    }]
  ],
  "filename": filename
}
// Modules will be available at this.myGlobal.

Import statements will be removed if the imported file is not a relative or absolute path. This allows for CDN hosted libraries to be explicitly imported in code whilst still retaining the globals import system.

API

This plugin requires passing the following plugin/babel options (besides adding the plugin):

Plugin options

globalName {string|!function()}

The name of the global variable that the modules should be exported to.

Default exports will be exported as <globalName>.<filename> whilst named exports will be exported as <globalName>Named.<fileName>.<exportName>.

globalName can also receive a function that returns the whole variable path for each export (e.g. (state, filePath, name, isWildcard) => 'this.MyModule.Views' + (name ? '.' + name : ''))

Babel options

filename {string}

This is an optional existing babel option, but is required for this plugin, since the plugin uses the file name to decide the name of the keys that will be exported in the global variable.

About

A babel plugin that exposes ES6 modules to global variables.

Resources

License

Stars

Watchers

Forks

Packages

No packages published