类型注解前后需要一致的空格风格。
支持配置以下选项:
type Options = {
before: boolean;
after: boolean;
overrides: {
colon: {
before: boolean;
after: boolean;
};
arrow: {
before: boolean;
after: boolean;
};
variable: {
before: boolean;
after: boolean;
};
parameter: {
before: boolean;
after: boolean;
};
property: {
before: boolean;
after: boolean;
};
returnType: {
before: boolean;
after: boolean;
};
}
} 示例:
"@typescript-eslint/type-annotation-spacing": [
"error",
{
"before": true,
"after": true,
"overrides": {
"colon": {
"before": false,
"after": true
},
"arrow": {
"before": true,
"after": true
},
"variable": {
"before": true,
"after": false
},
"parameter": {
"before": false,
"after": true
},
"property": {
"before": true,
"after": false
},
"returnType": {
"before": true,
"after": false
}
}
}
]
选项存在优先级,overrides下的配置会覆盖overrides之外的配置:overrides.variable/parameter/property/returnType > overrides.colon/arrow > before/after。
// 默认冒号前无空格,冒号后有空格
export const foo1: string = 'bar';
export declare function foo2(): string;
export class Foo3 {
public name: string = 'hello';
}
// 默认箭头前后都有空格
export declare type Foo4 = () => void;