@Sector567

Как по запросу получить часть контента, а остальную часть подгрузить по мере надобности во vue.js?

То есть реализовать так называемый lazy loading.
ПРИМЕР:
Вот при помощи axios за отправляю запрос, мне приходит ответ с массивом с 100 url-адресами к картинкам.

Если я просто через цикл переберу этот массив, и запишу в src тега img все пути, то соответственно у меня появятся
100 картинок разом.

Но мне нужно, что бы например появилось только 10 картинок, а при помощи пагинации, когда я переключаю следующую страницу, подгрузилось еще 10, когда переключаюсь на третью страницу- еще 10 и т.д.

Так вот, как правильно это можно реализовать на vue.js?
  • Вопрос задан
  • 99 просмотров
Решения вопроса 2
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
Разбить массив на чанки и отдавать нужный чанк на нужной странице. Ваш К.О.
Ответ написан
ArsenyMatytsyn
@ArsenyMatytsyn Куратор тега JavaScript
Руководитель frontend направления, предприниматель
Или формируй запросы по мере необходимости с offset и limit-параметрами. Если API такое не умеет — это плохое API.

Хотя 100 записей (если там не портянка на каждую запись) и бэк не скрипит, отдавая, то это в принципе норм и ты можешь создавать узлы изображений по мере необходимости, держа все данные в памяти. Можно и дальше пойти в сторону intersectionObserver, но кажись это сложновато будет)

Vue да, идеально подходит.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
summer Ярославль
от 100 000 до 140 000 ₽
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
19 апр. 2024, в 08:46
5000 руб./за проект
19 апр. 2024, в 03:52
1000 руб./за проект