版本

implicit-arrow-linebreak

強制箭頭函式主體的位置

🔧 可修正

此規則報告的部分問題可以透過 --fix 命令列 選項自動修正

重要

此規則已在 ESLint v8.53.0 中棄用。請使用 @stylistic/eslint-plugin-js 中的對應規則

深入瞭解

箭頭函式主體可以包含隱含回傳作為表達式,而不是區塊主體。對於強制隱含回傳表達式的一致位置可能很有用。

規則詳情

此規則旨在強制包含隱含回傳的箭頭函式的一致位置。

選項

此規則接受字串選項

  • "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" 選項,您也可以停用此規則,因為這將停用在箭頭函式中使用隱含回傳。

版本

此規則在 ESLint v4.12.0 中引入。

資源

變更語言