今天,我试图在我的angular 6应用程序中做到这一点:
export interface AuthConfig {}
export interface BasicAuthConfig extends AuthConfig {
username: string;
password: string;
}
export interface OAuth2AuthConfig extends AuthConfig {
tokenName: string;
url: string;
callbackUrl: string;
clientId: string;
scope: string[];
grantType: grantTypes;
}
并出现了皮棉错误:
An empty interface is equivalent to `{}`. (no-empty-interface)
我想通过Endpoint界面做到这一点:
Export interface Endpoint {
…
authConfig: AuthConfig;
…
}
但是只能这样做:
Export interface Endpoint {
…
authConfig: BasicAuthConfig | OAuth2AuthConfig;
…
}
不同类型的授权可能会很长,所以我不想继续将这些类型附加到Endpoint接口的authConfig属性。有什么办法可以声明一个空接口,以便扩展它而不会引起我的叫喊?
谢谢。
答案 0 :(得分:0)
您可以在tslint.json
中禁用此规则:
"rules": { "no-empty-interface": false }
或者仅禁用一根棉绒:
// tslint:disable-next-line
export interface AuthConfig {}
答案 1 :(得分:0)
Example:
$ cat .eslintrc.js
...
"rules": {
'@typescript-eslint/no-empty-interface': 'off'
}
...