跳至内容

@stylistic/

implicit-arrow-linebreak

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

规则详情

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

选项

此规则接受一个字符串选项

  • "beside" (默认) 禁止在箭头函数体之前换行。
  • "below" 要求在箭头函数体之前换行。

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

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

(foo) =>
    
bar
;
(foo) =>
(
bar);
(foo) =>
bar
=>
baz
;
(foo) =>
(
bar() );
错误

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

js
/* eslint @stylistic/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" 选项时,此规则的错误代码示例

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

(foo) => 
bar
;
(foo) =>
(
bar);
(foo) =>
bar
=>
baz
;
错误

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

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

(foo) =>
  bar;

(foo) =>
  (bar);

(foo) =>
  bar =>
    baz;
正确

何时不使用它

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

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