Aller au contenu principal

@babel/plugin-transform-modules-systemjs

Traduction Bêta Non Officielle

Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →

info

Ce plugin est inclus dans @babel/preset-env sous l'option modules

Ce plugin transforme les modules ECMAScript en format SystemJS. Notez que seule la syntaxe des instructions import/export (import "./mod.js") et des expressions d'import (import('./mod.js')) est transformée, car Babel ne connaît pas les différences d'algorithmes de résolution entre les implémentations de modules ECMAScript et SystemJS.

Exemple

Entrée

JavaScript
export default 42;

Sortie

JavaScript
System.register([], function(_export, _context) {
return {
setters: [],
execute: function() {
_export("default", 42);
},
};
});

Pour activer l'import dynamique (import('./lazy.js').then(m => ...)), activez d'abord le plugin @babel/plugin-syntax-dynamic-import.

Installation

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

Utilisation

Avec un fichier de configuration (Recommandé)

Sans options :

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

Avec options :

babel.config.json
{
"plugins": [
[
"@babel/plugin-transform-modules-systemjs",
{
// outputs SystemJS.register(...)
"systemGlobal": "SystemJS"
}
]
]
}

Via CLI

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

Via l'API Node

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

Options

moduleIds

boolean par défaut !!moduleId

Ajouté dans : v7.9.0

Active la génération d'ID de module.

moduleId

string

Ajouté dans : v7.9.0

Un ID fixe à utiliser pour le module. Ne peut pas être utilisé avec getModuleId.

getModuleId

(name: string) => string

Ajouté dans : v7.9.0

Étant donné le nom de module généré par Babel, retourne le nom à utiliser. Retourner une valeur falsy utilisera le name original.

moduleRoot

string

Ajouté dans : v7.9.0

Un chemin racine à inclure dans les noms de modules générés.