# @babel/预设流

如果您使用了 Flow ,则建议您使用此预设(preset)。Flow 是一个针对 JavaScript 代码的静态类型检查器。此预设(preset)包含以下插件:

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

# 示例 (opens new window)

输入

JavaScript

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

输出

JavaScript

function foo(one, two, three) {}

# 安装 (opens new window)

  • npm
npm install --save-dev @babel/preset-flow
  • yarn
yarn add --dev @babel/preset-flow

# 用法 (opens new window)

# 通过配置文件(推荐) (opens new window)

babel.config.json

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

# 通过命令行工具(CLI) (opens new window)

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

# 通过 Node API

JavaScript

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

# 参数 (opens new window)

# all (opens new window)

boolean类型,默认值为 false

如果文件顶部存在 @flowpragma,或者在 .flowconfig文件内设置了 all 参数 ,则 Flow 将只解析特定于 Flow 的功能。

如果你在 Flow 的配置中设置了 all参数,请确保将此参数设置为 true以获得相匹配的行为。

例如,如果没有上述任何一个参数设置,则如下所示的带有类型参数的调用表达式(call expression):

f<T>(e)

将被解析为一个嵌套的二元表达式:

JavaScript

f < T > e;

# allowDeclareFields (opens new window)

boolean类型,默认值为 false

添加于:v7.9.0

注意: 此参数在 Babel 8 中将被默认开启

启用时,仅类型类字段仅在它们以修饰符为前缀时才会被删除declare

JavaScript

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

您可以 在这里 阅读有关配置预设(preset)参数的更多信息。

Last Updated: 6/14/2023, 8:56:23 AM