Skip to main content

@babel/plugin-transform-modules-amd

History
VersionChanges
v7.14.0Implemented the importInterop option
info

This plugin is included in @babel/preset-env under the modules option

This plugin transforms ECMAScript modules to AMD. Note that only the syntax of import/export statements (import "./mod.js") and import expressions (import('./mod.js')) is transformed, as Babel is unaware of the different resolution algorithms between implementations of ECMAScript modules and AMD.

Example

In

JavaScript
exportdefault42;

Out

JavaScript
define(["exports"],function(exports){
"use strict";

Object.defineProperty(exports,"__esModule",{
value:true,
});

exports.default=42;
});

Installation

  • npm
  • Yarn
  • pnpm
  • Bun
npm install --save-dev @babel/plugin-transform-modules-amd

Usage

babel.config.json
{
"plugins":["@babel/plugin-transform-modules-amd"]
}

Via CLI

Shell
babel --plugins @babel/plugin-transform-modules-amd script.js

Via Node API

JavaScript
require("@babel/core").transformSync("code",{
plugins:["@babel/plugin-transform-modules-amd"],
});

Options

moduleIds

boolean defaults to !!moduleId

Added in: v7.9.0

Enables module ID generation.

moduleId

string

Added in: v7.9.0

A hard-coded ID to use for the module. Cannot be used alongside getModuleId.

getModuleId

(name: string) => string

Added in: v7.9.0

Given the babel-generated module name, return the name to use. Returning a falsy value will use the original name.

moduleRoot

string

Added in: v7.9.0

A root path to include on generated module names.

For options not listed here, see options for @babel/plugin-transform-modules-commonjs.

AltStyle によって変換されたページ (->オリジナル) /