function-paren-newline
強制函數括號內的一致換行符
🔧 可修正
此規則報告的某些問題可透過 --fix
命令列 選項自動修正
許多樣式指南要求或禁止在函數括號內使用換行符。
規則詳細資訊
此規則強制函數參數或引數的括號內使用一致的換行符。
選項
此規則有一個單一選項,可以是字串或物件。
"always"
要求在所有函數括號內使用換行符。"never"
禁止在所有函數括號內使用換行符。"multiline"
(預設) 如果任何參數/引數之間有換行符,則要求在函數括號內使用換行符。否則,禁止換行符。"multiline-arguments"
的運作方式與multiline
類似,但如果只有一個參數/引數,則允許在函數括號內使用換行符。"consistent"
要求每對括號一致使用換行符。如果一對括號中的一個括號內有換行符,而另一個括號沒有,則會報告錯誤。{ "minItems": value }
如果參數/引數的數量至少為value
,則要求在函數括號內使用換行符。否則,禁止換行符。
範例設定
{
"rules": {
"function-paren-newline": ["error", "never"]
}
}
{
"rules": {
"function-paren-newline": ["error", { "minItems": 3 }]
}
}
使用 "always"
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "always"] */
function foobar, baz {}
var qux = functionbar, baz {};
var qux = bar, baz => {};
foo bar, baz;
使用 "always"
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "always"] */
function foo(
bar,
baz
) {}
var qux = function(
bar, baz
) {};
var qux = (
bar,
baz
) => {};
foo(
bar,
baz
);
使用 "never"
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "never"] */
function foo
bar,
baz
{}
var qux = function
bar, baz
{};
var qux =
bar,
baz
=> {};
foo
bar,
baz
;
使用 "never"
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "never"] */
function foo(bar, baz) {}
function qux(bar,
baz) {}
var foobar = function(bar, baz) {};
var foobar = (bar, baz) => {};
foo(bar, baz);
foo(bar,
baz);
使用預設 "multiline"
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "multiline"] */
function foobar,
baz
) {}
var qux = function
bar, baz
{};
var qux = (
bar,
baz => {};
foo bar,
baz;
foo
function() {
return baz;
}
;
使用預設 "multiline"
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "multiline"] */
function foo(bar, baz) {}
var foobar = function(
bar,
baz
) {};
var foobar = (bar, baz) => {};
foo(bar, baz, qux);
foo(
bar,
baz,
qux
);
foo(function() {
return baz;
});
使用 "consistent"
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "consistent"] */
function foo(bar,
baz
{}
var qux = function(bar,
baz
{};
var qux = (
bar,
baz => {};
foo(
bar,
baz;
foo(
function() {
return baz;
};
使用 "consistent"
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "consistent"] */
function foo(bar,
baz) {}
var qux = function(bar, baz) {};
var qux = (
bar,
baz
) => {};
foo(
bar, baz
);
foo(
function() {
return baz;
}
);
使用 "multiline-arguments"
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "multiline-arguments"] */
function foobar,
baz
) {}
var foobar = functionbar,
baz
) {};
var foobar = (
bar,
baz => {};
foo(
bar,
baz;
foo(
, qux,
baz
);
使用 consistent "multiline-arguments"
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", "multiline-arguments"] */
function foo(
bar,
baz
) {}
var qux = function(bar, baz) {};
var qux = (
bar
) => {};
foo(
function() {
return baz;
}
);
使用 { "minItems": 3 }
選項時,此規則的不正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", { "minItems": 3 }] */
function foo
bar,
baz
{}
function foobarbar, baz, qux {}
var barbaz = function
bar, baz
{};
var barbaz =
bar,
baz
=> {};
foo
bar,
baz
;
使用 { "minItems": 3 }
選項時,此規則的正確程式碼範例
在 Playground 中開啟
/* eslint function-paren-newline: ["error", { "minItems": 3 }] */
function foo(bar, baz) {}
var foobar = function(
bar,
baz,
qux
) {};
var foobar = (
bar, baz, qux
) => {};
foo(bar, baz);
foo(
bar, baz, qux
);
何時不應使用
如果您不想強制函數括號內使用一致的換行符,請不要開啟此規則。
版本
此規則在 ESLint v4.6.0 中引入。