@babel/preset-flow
Этот пресет рекомендуется, если вы используете Flow, статический проверяющий типов для JavaScript-кода. Он включает следующие плагины:
Пример
Ввод
function foo(one: any, two: number, three?): string {}
Вывод
function foo(one, two, three) {}
Установка
- npm
- Yarn
- pnpm
npm install --save-dev @babel/preset-flow
yarn add --dev @babel/preset-flow
pnpm add --save-dev @babel/preset-flow
Использование
С файлом конфигурации (Рекомендуется)
{
"presets": ["@babel/preset-flow"]
}
Через командную строку
babel --presets @babel/preset-flow script.js
Через API Node.js
require("@babel/core").transformSync("code", {
presets: ["@babel/preset-flow"],
});
Параметры
all
boolean, по умолчанию false.
Flow будет анализировать только функции, специфичные для Flow, если присутствует псевдоним @flow в начале файла, или параметр all задан в .flowconfig.
Если вы используете параметр all в вашей конфигурации Flow, убедитесь, что этот параметр установлен в true для получения соответствующего поведения.
Например, без указания выше, следующее выражение вызова с аргументом типа:
f<T>(e)
Будет обработано как вложенное бинарное выражение:
f < T > e;
allowDeclareFields
boolean, по умолчанию false
Добавлен в: v7.9.0
ПРИМЕЧАНИЕ: Это будет включено по умолчанию в Babel 8
При включении, только поля класса, содержащие тип, будут удалены только в том случае, если они опережаются модификатором declare:
class A {
declare foo: string; // Removed
bar: string; // Initialized to undefined
}
Вы можете узнать больше о настройке параметров пресета здесь
© 2014-present Sebastian McKenzie
Licensed under the MIT License.
https://babeljs.io/docs/babel-preset-flow/