Он используется на 4 вкладках и выполняет одинаковую логику, но хранит для каждой свое состояние. В итоге создается 1 сервис и провайдится свой в каждую вкладку. Но потом появляется какая-то особенность для вкладки, и что делать? копировать код сервиса в отдельный сервис для вкладки? Для вкладки создавать сервис и его наследовать от базового?
"Особенность" выносить в отдельный класс
Т.е. решать без наследования? А отдельный класс дергает состояние из основного?
Типа того, с наследованием очень аккуратно нужно быть. Вообще наследовать реализацию это скользкая дорожка
А если основной класс дергает метод, а этот метод в каждом отдельном классе свой? То как понять какой ему отдельный класс дергать? Инжектить отдельный класс ?
Не понял что имеется ввиду
Есть базовый класс, в нем общий для 4 вкладок код. Но он вызывает метод getCurrentData() например, и в каждой вкладке реализация этого метода разная. Получается для него нужно создать отдельный класс. И будет 4 класса с методом getCurrentData(), а как базовый класс поймет у какого из 4 классов этот метод вызывать?
Понимаешь как работает наследование?
Понимаю, но на другом фреймворке без di такое реализовывал. А ты как понимаешь? может я не так понимаю)
Если ты спрашиваешь про DI, то там есть такие вещи как provide, который несет токен и useClass, то что по этому токену будет отдаваться
Я спрашиваю просто как решать, под наследованием понимаю когда надо базовый функционал получить, Просто наследовать можно Class extends Class, а в angular это на уровне di можно решать я сейчас из обсуждения понял.
Обсуждают сегодня