Spec-Zone.ru › Babel 7

@babel/preset-flow

Этот пресет рекомендуется, если вы используете Flow, статический проверяющий типов для JavaScript-кода. Он включает следующие плагины:

  • @babel/plugin-transform-flow-strip-types

Пример​

Ввод

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/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API