Здравствуйте.
У меня условно абстрактный класс для работы с сетью, от которого наследуется множество классов различных моделей, пример:
/**
* @abstract
*/
class AbstractHttpService {
baseRouteName;
constructor(baseRouteName) {
if (baseRouteName) {
this.baseRouteName = baseRouteName;
}
}
}
class ProductsHttpService extends AbstractHttpService {
baseRouteName = 'product';
}
Решил вкорячить кэширование экземпляров http-сервисов и тут понял, что из конструктора абстрактного класса никак не получить значение свойства "ребенка" до его инициализации.
Скажите, пожалуйста, есть ли какой-нибудь способ получить из абстрактного класса значение свойства класса, который наследуется от этого самого абстрактного класса?
Вижу только одно решение: вместо объявления для ребенка значения свойства по умолчанию передавать в конструктор родителя это самое значение.