Skip to main content

default-param-last

Enforce default parameters to be last.

🧱

This is an "extension" rule that replaces a core ESLint rule to work with TypeScript. See Rules > Extension Rules.

This rule extends the base default-param-last rule from ESLint core. 它增加了对可选参数的支持。

¥It adds support for optional parameters.

function f(a = 0, b: number) {}
function f(a: number, b = 0, c: number) {}
function f(a: number, b?: number, c: number) {}
class Foo {
constructor(
public a = 10,
private b: number,
) {}
}
class Foo {
constructor(
public a?: number,
private b: number,
) {}
}
Open in Playground

选项

See eslint/default-param-last's options.

如何使用

eslint.config.mjs
export default tseslint.config({
rules: {
// Note: you must disable the base rule as it can report incorrect errors
"default-param-last": "off",
"@typescript-eslint/default-param-last": "error"
}
});

在线运行试试这个规则 ↗

'## 资源'

Taken with ❤️ from ESLint core.