Я наблюдал за событием Мэтью Подвайски на https://www.youtube.com/watch?v=zlERo_JMGCw 29:38
Где он объясняет, как они решили прокрутить по netflix. Если пользователь прокручивает больше данных, поскольку предыдущие данные очищаются и больше добавляются (но прокрутка назад показывает предыдущие данные снова).
Я хотел сделать подобное, но я взял демо-код netflix:
function getRowUpdates(row) {
var scrolls = Rx.Observable.fromEvent(document, 'scroll');
var rowVisibilities =
scrolls.throttle(50)
.map(function(scrollEvent) {
return row.isVisible(scrollEvent.offset);
})
.distinctUntilChanged();
var rowShows = rowrowVisibilities.filter(function(v) {
return v;
});
var rowHides = rowrowVisibilities.filter(function(v) {
return !v;
});
return rowShows
.flatMap(Rx.Observable.interval(10))
.flatMap(function() {
return row.getRowData().takeUntil(rowHides);
})
.toArray();
}
Но я немного смущен тем, как передавать новые данные или данные страницы в соответствии с прокруткой здесь. Может кто-то дать небольшое объяснение, как я могу сделать следующее:
- выберите первый список (я могу это сделать)
- выберите другой список, когда пользователь прокрутит страницу вниз (используя следующую страницу подкачки)
- удалить предыдущие извлеченные данные из памяти и выполнить запрос по заказу (прокрутите вверх).