Vai al contenuto principale

@babel/preset-flow

Traduzione Beta Non Ufficiale

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

Questo preset è consigliato se utilizzi Flow, un controllore di tipi statico per codice JavaScript. Include i seguenti plugin:

Esempio

In

JavaScript
function foo(one: any, two: number, three?): string {}

Out

JavaScript
function foo(one, two, three) {}

Installazione

npm install --save-dev @babel/preset-flow

Utilizzo

Con un file di configurazione (Consigliato)

babel.config.json
{
"presets": ["@babel/preset-flow"]
}

Tramite CLI

Shell
babel --presets @babel/preset-flow script.js

Tramite Node API

JavaScript
require("@babel/core").transformSync("code", {
presets: ["@babel/preset-flow"],
});

Opzioni

all

boolean, predefinito false.

Flow analizzerà le funzionalità specifiche solo se è presente un pragma @flow in testa al file o se l'opzione all è impostata nel .flowconfig.

Se stai utilizzando l'opzione all nella tua configurazione Flow, assicurati di impostare questa opzione su true per ottenere un comportamento coerente.

Ad esempio, senza nessuna delle impostazioni precedenti, la seguente espressione di chiamata con un argomento di tipo:

f<T>(e)

Verrà analizzata come un'espressione binaria annidata:

JavaScript
f < T > e;

allowDeclareFields

boolean, predefinito false

Aggiunto in: v7.9.0

nota

Questa opzione sarà abilitata di default in Babel 8

Quando abilitata, i campi classe di solo tipo vengono rimossi solo se prefissati dal modificatore declare:

JavaScript
class A {
declare foo: string; // Removed
bar: string; // Initialized to undefined
}

ignoreExtensions

boolean, predefinito true

Aggiunto in: v7.24.0

Quando impostato su true, Babel applicherà la trasformazione flow a tutte le estensioni. Quando impostato su false, Babel eviterà la trasformazione flow per i file *.tsx.

experimental_useHermesParser

boolean, predefinito false

Aggiunto in: v7.24.0

Il team Hermes sta mantenendo un parser Flow alternativo per Babel, che viene tenuto più aggiornato con le ultime funzionalità della sintassi Flow. Puoi abilitarlo impostando questa opzione su true.

avviso

Il parser Hermes attualmente non allega i commenti all'AST. Ciò può causare problemi con le trasformazioni che dipendono dalla presenza di commenti specifici.

Ulteriori informazioni sulla configurazione delle opzioni dei preset sono disponibili qui