Vai al contenuto principale

@babel/plugin-transform-explicit-resource-management

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 ES2026.

Questo plugin consente a Babel di trasformare le dichiarazioni using handler = await read();.

Esempio

input.js
using handlerSync = openSync();
await using handlerAsync = await openAsync();

verrà trasformato in

output.js
try {
var _usingCtx = babelHelpers.usingCtx();
var handlerSync = _usingCtx.u(openSync());
var handlerAsync = _usingCtx.a(await openAsync());
} catch (_) {
_usingCtx.e = _;
} finally {
await _usingCtx.d();
}

Provalo sulla REPL.

Installazione

npm install --save-dev @babel/plugin-transform-explicit-resource-management

Utilizzo

Con un file di configurazione (Consigliato)

babel.config.json
{
"plugins": ["@babel/plugin-transform-explicit-resource-management"]
}

Tramite CLI

Shell
babel --plugins @babel/plugin-transform-explicit-resource-management script.js

Tramite Node API

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

Riferimenti