function-paren-newline
在函数括号内强制执行一致的换行符( function-paren-newline )
在--fix
命令行上的选项可以自动修复一些被这条规则反映的问题。
许多样式指南要求或禁止功能括号内的换行符。
规则细节
此规则在函数参数或参数的括号内强制执行一致的换行符。
选项
这个规则有一个选项,它可以是一个字符串或一个对象。
"always"
需要在所有函数括号内换行。
"never"
禁止所有功能括号内的换行符。
"multiline"
(默认)需要在函数圆括号内换行符,如果任何参数/参数之间有换行符。否则,它不允许换行符。
"consistent"
要求每对圆括号一致地使用换行符。如果该对中的一个括号内有换行符,而另一个括号中没有换行符,则会报告错误。
{ "minItems": value }
如果参数/参数的数目至少为1,则需要在函数括号内换行value
。否则,它不允许换行符。
示例配置:
{
"rules": {
"function-paren-newline": ["error", "never"]
}
}
{
"rules": {
"function-paren-newline": ["error", { "minItems": 3 }]
}
}
此规则的错误
代码示例包含以下"always"
选项:
/* eslint function-paren-newline: ["error", "always"] */
function foo(bar, baz) {}
var foo = function(bar, baz) {};
var foo = (bar, baz) => {};
foo(bar, baz
此规则的正确
代码示例包含以下"always"
选项:
/* eslint function-paren-newline: ["error", "always"] */
function foo(
bar,
baz
) {}
var foo = function(
bar, baz
) {};
var foo = (
bar,
baz
) => {};
foo(
bar,
baz
此规则的错误
代码示例包含以下"never"
选项:
/* eslint function-paren-newline: ["error", "never"] */
function foo(
bar,
baz
) {}
var foo = function(
bar, baz
) {};
var foo = (
bar,
baz
) => {};
foo(
bar,
baz
此规则的正确
代码示例包含以下"never"
选项:
/* eslint function-paren-newline: ["error", "never"] */
function foo(bar, baz) {}
function foo(bar,
baz) {}
var foo = function(bar, baz) {};
var foo = (bar, baz) => {};
foo(bar, baz
foo(bar,
baz
此规则的默认代码错误
代码示例"multiline"
:
/* eslint function-paren-newline: ["error", "multiline"] */
function foo(bar,
baz
) {}
var foo = function(
bar, baz
) {};
var foo = (
bar,
baz) => {};
foo(bar,
baz
foo(
function() {
return baz;
}
具有默认选项的此规则的正确
代码示例"multiline"
:
/* eslint function-paren-newline: ["error", "multiline"] */
function foo(bar, baz) {}
var foo = function(
bar,
baz
) {};
var foo = (bar, baz) => {};
foo(bar, baz, qux
foo(
bar,
baz,
qux
foo(function() {
return baz;
}
此规则的错误
代码示例包含以下"consistent"
选项:
/* eslint function-paren-newline: ["error", "consistent"] */
function foo(bar,
baz
) {}
var foo = function(bar,
baz
) {};
var foo = (
bar,
baz) => {};
foo(
bar,
baz
foo(
function() {
return baz;
}
具有一致选项的此规则的正确
代码示例"consistent"
:
/* eslint function-paren-newline: ["error", "consistent"] */
function foo(bar,
baz) {}
var foo = function(bar, baz) {};
var foo = (
bar,
baz
) => {};
foo(
bar, baz
foo(
function() {
return baz;
}
此规则的错误
代码示例包含以下{ "minItems": 3 }
选项:
/* eslint function-paren-newline: ["error", { "minItems": 3 }] */
function foo(
bar,
baz
) {}
function foo(bar, baz, qux) {}
var foo = function(
bar, baz
) {};
var foo = (bar,
baz) => {};
foo(bar,
baz
此规则的正确
代码示例包含以下{ "minItems": 3 }
选项:
/* eslint function-paren-newline: ["error", { "minItems": 3 }] */
function foo(bar, baz) {}
var foo = function(
bar,
baz,
qux
) {};
var foo = (
bar, baz, qux
) => {};
foo(bar, baz
foo(
bar, baz, qux
何时不使用它
如果不想在功能圆括号内执行一致的换行符,请不要启用此规则。
版本
该规则是在 ESLint 4.6.0 中引入的。