TS4114

error TS4114: This member must have an ‘override‘ modifier because it overrides a member in the base class ‘MyBaseClass‘.

Broken Code ❌

1
2
3
4
5
6
7
8
9
10
11
class MyBaseClass {
sayHello(): string {
return 'Hello!';
}
}

class MyDerivedClass extends MyBaseClass {
sayHello(): string {
return 'Welcome!';
}
}

Fixed Code ✔️

The error pops up when “noImplicitOverride” is set to true in your “tsconfig.json” file, and you don’t use the override modifier when overwriting a function from your base class. You can fix this by setting “noImplicitOverride” to false (not recommended) or using the override modifier (preferred solution):

1
2
3
4
5
6
7
8
9
10
11
class MyBaseClass {
sayHello(): string {
return 'Hello!';
}
}

class MyDerivedClass extends MyBaseClass {
override sayHello(): string {
return 'Welcome!';
}
}