I have used an implementation as given below in JavaScript.
class Base {
installGetters() {
Object.defineProperty(this, 'add', {
get() {
return 5;
}
});
}
}
class New extends Base {
constructor() {
super();
this.installGetters();
}
someAddition() {
return 10 + this.add;
}
}
I have defined the getter property add
in the function of the parent class - Base
and used that property in child class New
after calling the installGetters()
function in the child class constructor. This works for JavaScript, but this.add
is throwing an error in case of Typescript. Any help would be much appreciated.
My main motivation for doing this is that I want to pass an object to installGetters()
so that it can generate multiple getters with the object keys being the getter names and the values being returned from the corresponding getter functions.
This is working in JavaScript, so my main curiosity is whether this is not possible in TypeScript or am I doing something wrong.