В чем смысл этого условного утверждения?

Firebase: как отобразить поток элементов в обратном порядке с лимитом для каждого запроса и индикатором кнопки «загрузить больше».

  • Это позволит получить последние 10 элементов список

FBRef.child ("childName") .limitToLast (loadMoreLimit) // loadMoreLimit = 10, например

  • Это будет последнее 10 элементов , Возьмите идентификатор последней записи в списке и сохраните для загрузки больше функциональности. Затем преобразуем коллекцию объектов в массив и создаем list.reverse ().
  • LOAD MORE Функциональность: следующий вызов будет делать две вещи: он получит следующую последовательность элементов списка на основе идентификатора ссылки из первого запроса и даст вам индикатор, если вам нужно отобразить «load» больше ".

this.FBRef .child ("childName") .endAt (null, lastThreadId) // Получить это с предыдущего шага .limitToLast (loadMoreLimit + 2)

  • Вам нужно будет удалить первый и последний элемент этой коллекции объектов. Первый элемент - ссылка для получения этого списка. Последний элемент является индикатором кнопки «Показать больше».
  • У меня есть куча другой логики, которая будет держать все в чистоте. Вам нужно будет добавить этот код только для большей функциональности загрузки.
      list = snapObjectAsArray;  // The list is an array from snapObject
      lastItemId = key; // get the first key of the list
    
      if (list.length < loadMoreLimit+1) {
        lastItemId = false; 
      }
      if (list.length > loadMoreLimit+1) {
        list.pop();
      }
      if (list.length > loadMoreLimit) {
        list.shift();
      }
      // Return the list.reverse() and lastItemId 
      // If lastItemId is an ID, it will be used for the next reference and a flag to show the "load more" button.
    }
    
0
задан M.Doe 16 January 2019 в 14:50
поделиться