typescript/adjacent-overload-signatures 风格
它的作用
要求函数重载签名必须连续排列。
为什么这不好?
函数重载签名表示一个函数可以被调用的多种方式,且可能具有不同的返回类型。 通常,描述某个函数的接口或类型别名会将所有重载签名放在一起。 如果签名分散在类型的其他位置,未来阅读代码的开发者更容易忽略它们。
示例
以下是此规则的错误代码示例:
typescript
declare namespace Foo {
export function foo(s: string): void;
export function foo(n: number): void;
export function bar(): void;
export function foo(sn: string | number): void;
}
type Foo = {
foo(s: string): void;
foo(n: number): void;
bar(): void;
foo(sn: string | number): void;
};
interface Foo {
foo(s: string): void;
foo(n: number): void;
bar(): void;
foo(sn: string | number): void;
}
class Foo {
foo(s: string): void;
foo(n: number): void;
bar(): void {}
foo(sn: string | number): void {}
}
export function foo(s: string): void;
export function foo(n: number): void;
export function bar(): void;
export function foo(sn: string | number): void;如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"typescript/adjacent-overload-signatures": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"typescript/adjacent-overload-signatures": "error",
},
});bash
oxlint --deny typescript/adjacent-overload-signatures版本
此规则于 v0.0.7 中添加。
