@babel/preset-flow
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 →
Ce préréglage est recommandé si vous utilisez Flow, un vérificateur de types statique pour le code JavaScript. Il inclut les plugins suivants :
Exemple
Entrée
function foo(one: any, two: number, three?): string {}
Sortie
function foo(one, two, three) {}
Installation
- npm
- Yarn
- pnpm
- Bun
npm install --save-dev @babel/preset-flow
yarn add --dev @babel/preset-flow
pnpm add --save-dev @babel/preset-flow
bun add --dev @babel/preset-flow
Utilisation
Avec un fichier de configuration (Recommandé)
{
"presets": ["@babel/preset-flow"]
}
Via CLI
babel --presets @babel/preset-flow script.js
Via l'API Node
require("@babel/core").transformSync("code", {
presets: ["@babel/preset-flow"],
});
Options
all
boolean, valeur par défaut : false.
Flow ne traitera les fonctionnalités spécifiques à Flow que si une directive @flow est présente en haut du fichier, ou si l'option all est activée dans le .flowconfig.
Si vous utilisez l'option all dans votre configuration Flow, assurez-vous de définir cette option à true pour obtenir un comportement cohérent.
Par exemple, sans aucun des deux paramètres précédents, l'expression d'appel suivante avec un argument de type :
f<T>(e)
serait analysée comme une expression binaire imbriquée :
f < T > e;
allowDeclareFields
boolean, valeur par défaut : false
Ajouté dans : v7.9.0
Activé par défaut dans Babel 8
Lorsqu'activé, les champs de classe purement typés ne sont supprimés que s'ils sont préfixés par le modificateur declare :
class A {
declare foo: string; // Removed
bar: string; // Initialized to undefined
}
ignoreExtensions
boolean, valeur par défaut : true
Ajouté dans : v7.24.0
Lorsqu'elle est définie à true, Babel appliquera la transformation flow à toutes les extensions. Lorsqu'elle est définie à false, Babel évitera la transformation flow pour les fichiers *.tsx.
experimental_useHermesParser
boolean, valeur par défaut : false
Ajouté dans : v7.24.0
L'équipe Hermes maintient un analyseur Flow alternatif pour Babel, qui est mieux tenu à jour avec les dernières fonctionnalités syntaxiques de Flow. Vous pouvez l'activer en définissant cette option à true.
L'analyseur Hermes n'attache actuellement pas les commentaires à l'AST. Cela peut causer des problèmes avec les transformations qui dépendent de la présence de commentaires spécifiques.
Vous pouvez en savoir plus sur la configuration des options des préconfigurations ici