跳至主要內容

@babel/plugin-transform-modules-amd

歷史
版本變更
v7.14.0實作 importInterop 選項
資訊

此外掛程式包含在 @babel/preset-env 中的 modules 選項下

此外掛程式將 ECMAScript 模組轉換成 AMD。請注意,僅會轉換 import/export 陳述式 (import "./mod.js") 和 import 運算式 (import('./mod.js')) 的語法,因為 Babel 不知道 ECMAScript 模組和 AMD 實作之間不同的解析演算法。

範例

輸入

JavaScript
export default 42;

輸出

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

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

exports.default = 42;
});

安裝

npm install --save-dev @babel/plugin-transform-modules-amd

使用

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

透過 CLI

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

透過 Node API

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

選項

moduleIds

boolean 預設為 !!moduleId

新增於:v7.9.0

啟用模組 ID 產生。

moduleId

字串

新增於:v7.9.0

模組要使用的硬編碼 ID。不能與 getModuleId 搭配使用。

getModuleId

(name: 字串) => 字串

新增於:v7.9.0

給定 babel 生成的模組名稱,回傳要使用的名稱。回傳假值會使用原始的 name

moduleRoot

字串

新增於:v7.9.0

包含在產生的模組名稱中的根路徑。

對於未在此處列出的選項,請參閱 @babel/plugin-transform-modules-commonjs 的選項。