Vai al contenuto principale

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

Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

informazioni

Questo plugin è incluso in @babel/preset-env, in ES2020

Esempio

In

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

Out

JavaScript
var _object$foo;

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

Non possiamo usare != null qui perché document.all == null e document.all non è considerato "nullish".

Installazione

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

Utilizzo

Con un file di configurazione (Consigliato)

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

Tramite CLI

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

Tramite Node API

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

Opzioni

loose

boolean, predefinito false.

Quando è true, questa trasformazione simulerà che document.all non esista ed eseguirà controlli di uguaglianza approssimativa con null invece di controlli di uguaglianza stretta sia per null che per undefined.

attenzione

Considera di migrare all'assunzione di primo livello noDocumentAll.

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

Esempio

In

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

Out

JavaScript
var _object$foo;

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

Maggiori informazioni sulla configurazione delle opzioni del plugin sono disponibili qui

Riferimenti