Aller au contenu principal

@babel/plugin-transform-nullish-coalescing-operator

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, dans la spécification ES2020

Exemple

Entrée

JavaScript
var foo = object.foo ?? "default";

Sortie

JavaScript
var _object$foo;

var foo =
(_object$foo = object.foo) !== null && _object$foo !== void 0
? _object$foo
: "default";
note

On ne peut pas utiliser != null ici car document.all == null et document.all n'est pas considéré comme "nullish".

Installation

npm install --save-dev @babel/plugin-transform-nullish-coalescing-operator

Utilisation

Avec un fichier de configuration (Recommandé)

babel.config.json
{
"plugins": ["@babel/plugin-transform-nullish-coalescing-operator"]
}

Via CLI

Shell
babel --plugins @babel/plugin-transform-nullish-coalescing-operator script.js

Via l'API Node

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

Options

loose

boolean, valeur par défaut : false.

Lorsque défini à true, cette transformation simule l'absence de document.all et effectue des vérifications d'égalité large avec null plutôt que des vérifications d'égalité stricte contre null et undefined.

attention

Envisagez de migrer vers l'assumption de haut niveau noDocumentAll.

babel.config.json
{
"assumptions": {
"noDocumentAll": true
}
}

Exemple

Entrée

JavaScript
var foo = object.foo ?? "default";

Sortie

JavaScript
var _object$foo;

var foo = (_object$foo = object.foo) != null ? _object$foo : "default";
astuce

Vous pouvez en savoir plus sur la configuration des options de plugin ici

Références