Microsoft/TypeScript
在 GitHub 查看Suggestion: output fewer errors for incorrectly implemented interface
Open
#10,077 创建于 2016年8月1日
Effort: DifficultHelp WantedSuggestion
描述
TypeScript Version: nightly
Code
interface A {
f(): void;
}
class B implements A {
eff() {}
}
var b: B;
b.f();
b.f();
b.f();
Expected behavior:
src/a.ts(4,7): error TS2420: Class 'B' incorrectly implements interface 'A'.
Property 'f' is missing in type 'B'.
Actual behavior:
src/a.ts(4,7): error TS2420: Class 'B' incorrectly implements interface 'A'.
Property 'f' is missing in type 'B'.
src/a.ts(9,3): error TS2339: Property 'f' does not exist on type 'B'.
src/a.ts(10,3): error TS2339: Property 'f' does not exist on type 'B'.
src/a.ts(11,3): error TS2339: Property 'f' does not exist on type 'B'.
There can be an overwhelming number of missing-property errors if a commonly-used class mis-implements an interface it declares.