Как кэшировать все изображения продуктов (около 1000) из хранилища firebase с помощью приложения angular 4?

Как кэшировать все изображения продуктов моего веб-сайта (около 1000) из хранилища firebase с помощью приложения angular 4. Изображения загружаются на главную страницу очень медленно.

Есть ли способ кэшировать все изображения при запуске приложения или загружать их в кеш в первый раз и использовать оттуда?

Я пробовал искать в Интернете, но с angular 4/5 мало информации. может кто-нибудь помочь мне здесь?

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
1
0
1 623
1

Ответы 1

Есть несколько возможностей. Вот некоторые предложения:

  • Когда вы загружаете файл в Firebase Storage, вы можете указать свойства метаданных, такие как cacheControl. Это свойство будет использоваться для кеширования файла в соответствии с вашей спецификацией. Пример представлен в Документация Firebase.

  • Если вы используете хостинг Firebase, вы можете настроить firebase.json для кэширования статических ресурсов, таких как изображения, на уровне CDN с заголовком Cache-Control. Пример этой функции представлен в документация.

  • Кроме того, вы можете использовать сервис-воркера, возможно, с рабочий ящик, со стратегией cacheFirst для кэширования всех изображений продуктов в браузере пользователя. Затем, после первого кеширования, изображения будут сначала загружены из локального кеша.

  • В сценарии Angular вы также можете использовать подход отложенной загрузки для прогрессивной загрузки изображений с сервера. По сути, вам нужно использовать заполнитель в атрибуте src (например, эффект среднего размытия) и асинхронно загружать изображения с сервера. Затем Angular может отображать изображения реактивно, например, с помощью Observer. Независимая библиотека фреймворка занимается этой проблемой - Blazy.

Благодаря этим подходам ваше приложение будет загружать изображения быстрее.

Другие вопросы по теме