создать отдельные методы лучше
Можно еще так, но хз вообще нормально ли
Не лучше
Map<string, () => Observable<...>>
Это что вообще, как и зачем?
Вы какой-то фреймворк пилите? Я вижу protected, и this.params откуда-то берутся? Почему не создать отдельные методы по которым будет понятно что делается, вместо абрастрактного?
this.request = this.map.get(this.METHOD)()
Нет. Просто обертку над http. Делаю чтобы то, что на первом скрине можно было уместить в то, что на втором
Мне в компонентах вообще пофиг что там делается. Мне нужно отправить запрос, а что там под капотом мне до одного места, не хочу захламлять этим код)
Погугли про map в js. Который карта, а не перебор массива
Не понял вообще ничего, обьясните пожалуйста что вы имеете в виду
А как понять что это карта, а не перебор массива?
в мапу положи ключ = метод, значение = функция для создания запроса
https://learn.javascript.ru/map-set
Спасибо, щас гляну
в httpClient есть метод .request, который можно подогнать под нужды
Абсолютно непонятно как он работает((
По описанию – то же самое что и HttpClient
только смотри, если прокидывать туда метод сервиса, можно this потерять. И нужно будет через байнд привязывать класс
Предлагаю не плодить дырявых абстракций и нормально пользоваться тем что предоставляет инструмент.
А почему это будет короче?
По факту это можно сказать про любо фреймворк
Смотри, this указывает на контекст выполнения. В твоем случае он указывает на твой компонент. Те компонент.service.метод Когда ты запишешь в мап, контекстом будет уже объект Map, а в этом контексте твой сервис не существует. Alexey, не вижу проблемы ни в protected, ни в map. Map выглядит красивее чем куча if или switch Protected я лично, часто юзаю, когда надо переиспользовать методы. Это проще чем сервисы прокидывать, тк если тебе например, надо хранить данные, то для сервиса придется создавать кучу провайдеров в каждом компоненте
Может и красивее, но короче ли?
хз, обычно что красивее, то и более хорошо читается. ну мб для 3 методов это и излишняя заморочка, но если бы у тебя их было штук 15, то определенно map
Обсуждают сегодня