babel/MODULES.md
2014-10-19 17:49:09 +11:00

1.4 KiB

Modules

Usage

CLI

$ 6to5 --modules common script.js

Node

var to5 = require("6to5");
to5.transform('import "foo";', { modules: "common" });

Formats

Common (Default)

import "foo"; // require("foo");

import foo from "foo"; // var foo = require("foo").default;
import * as foo from "foo"; // var foo = require("foo");

import {bar} from "foo"; // var bar = require("foo").bar;
import {foo as bar} from "foo"; // var bar = require("foo").foo;

export {test}; // exports.test = test;
export var test = 5; // var test = 5; exports.test = test;

export default test; // exports.default = test;

AMD

In

import foo from "foo";

export function bar() {
  return foo("foobar");
}

Out

define(["foo"], function (_foo) {
  var exports = {};
  exports.bar = bar;

  var foo = _foo.default;

  function bar() {
    return foo("foobar");
  }

  return exports;
});

UMD

In

import foo from "foo";

export function bar() {
  return foo("foobar");
}

Out

(function (factory) {
  if (typeof define === "function" && define.amd) {
    define(["exports", "foo"], factory);
  } else if (typeof exports !== "undefined") {
    factory(exports, require("foo"));
  }
})(function (exports) {
  exports.bar = bar;

  var foo = _foo.default;

  function bar() {
    return foo("foobar");
  }
});