# implicit-arrow-linebreak

强制箭头函数体的位置

一些该规则报告的问题可以通过 --fix 命令行选项 自动修复

箭头函数体可以包含作为表达式而不是块体的隐式返回。为隐式返回的表达式强制执行一致的位置可能很有用。

# 规则详情

此规则旨在为包含隐式返回的箭头函数强制执行一致的位置。

# 选项

此规则接受字符串选项:

  • "beside"(默认)不允许在箭头函数体之前使用换行符。
  • "below" 在箭头函数体之前需要一个换行符。

此规则使用默认 "beside" 选项的错误代码示例:

/* eslint implicit-arrow-linebreak: ["error", "beside"] */

(foo) =>
  bar;

(foo) =>
  (bar);

(foo) =>
  bar =>
    baz;

(foo) =>
(
  bar()
);

此规则使用默认 "beside" 选项的正确代码示例:

/* eslint implicit-arrow-linebreak: ["error", "beside"] */

(foo) => bar;

(foo) => (bar);

(foo) => bar => baz;

(foo) => (
  bar()
);

// functions with block bodies allowed with this rule using any style
// to enforce a consistent location for this case, see the rule: `brace-style`
(foo) => {
  return bar();
}

(foo) =>
{
  return bar();
}

此规则使用 "below" 选项的错误代码示例:

/* eslint implicit-arrow-linebreak: ["error", "below"] */

(foo) => bar;

(foo) => (bar);

(foo) => bar => baz;

此规则使用 "below" 选项的正确代码示例:

/* eslint implicit-arrow-linebreak: ["error", "below"] */

(foo) =>
  bar;

(foo) =>
  (bar);

(foo) =>
  bar =>
    baz;

# 何时不使用

如果您不关心隐式返回的箭头函数表达式的位置一致,则不应打开此规则。

如果您对 arrow-body-style 使用 "always" 选项,您也可以禁用此规则,因为这将禁用在箭头函数中使用隐式返回。

Last Updated: 5/13/2023, 8:55:38 PM