Создание макета раздела с поддержкой медленной нагрузки (Lazy Load)

По мере запроса список контента может вызвать макет раздела с дополнительными компонентами.

При визуализации списка контента можно выбрать макет раздела для рендеринга всех возвращаемых элементов контента. Это позволяет создавать различные макеты элементов контента, например таблицы, ползунки или компоновки из восьми столбцов. Эти пользовательские макеты разделов также могут участвовать в расширенных функциях разбивки на страницы.

Списки контента поддерживают следующую разбивку на страницы:

  • Разбивка на страницы
  • Загрузка при прокрутке
  • Загрузка при нажатии

Для стандартной функции разбивки на страницы от макета раздела не требуется никаких действий. Когда пользователь нажимает следующую страницу, она повторно визуализируется со следующим набором элементов. Тем не менее, для действий Загрузка при прокрутке и Загрузка при нажатии вместо повторной визуализации макета раздела к нему добавляются дополнительные компоненты. Это используется в основном для модели бесконечной прокрутки, в которой сначала загружаются первые n элементов, а по мере прокрутки страницы пользователем извлекается и визуализируется следующий набор элементов. Для поддержки действий Загрузка при прокрутке и Загрузка при нажатии, для пользовательского макета разделов необходимо создать следующие файлы:

  1. render.js: внедрение addComponent() API. Вызывается для каждого нового компонента, добавляемого в макет раздела.

    // dynamic API for adding additional components through "load more" when used in a Content List
               addComponent: function (parentObj, component) {     
                   // create the component div and add it to the parent object
                   $(parentObj).append(this.createComponentDiv(component)); 
               }
  2. appinfo.json: включите следующее, чтобы в списке контента учитывалось то, что макет раздела поддерживает addComponent() api.

    "contentListData": {  
      "addComponent": true
    },

После обновления appinfo.json, когда пользователь выбирает этот макет раздела на панели настроек и переходит на экран разбивки на страницы, отображаются команды Load on click и Load on scroll.