кешрованию данных, напрмер справочники и тд?
+1 интересно
У нас сервисы используются только для того, чтобы что-то получить или что-то сделать. Данные они не хранят.
У нас всё интереснее. Есть сервисы с приставкой Manager и Repository. Manager'ы принимают Repository в конструкторах. На кэшируемые сущности заводится 2 Repository - 1 для localstorage, 1 для http-запросов. У типичного метода Manager'а есть параметр bool - forceApiCall - тогда вызов идёт всегда к API. Во всех иных случаях, он обращается к репозиторию, который хранил в localStorage, и если вернулся ответ (специальный generic class, в котором boolean itemExists и T item), то возвращаем из localStorage. Если же данных нет, либо forceApiCal=true, то по получению ответа от API мы эти данные складываем и в localStorage, и отдаём в качестве ответа.
Обсуждают сегодня