2016-03-27 3 views
1

На основании документации по Onsen2 (this page) on-infinite-scroll и ng-infinite-scroll должен работать, но я не могу заставить их работать.Я не могу работать с бесконечным прокруткой на Onsen 2

<ons-page modifier="material" ng-controller="PostListController" on-infinite-scroll="nextItems()" > 

и

$scope.nextItems = function() { 
    alert(1); 
} 

Есть ли то, что я пропустил.

codepen sample

ответ

2

Эта функция была добавлена ​​в beta.8 так что вам нужно обновить. on-infinite-scroll="nextItems" должен работать на Vanilla JS и ng-infinite-scroll="nextItems" для AngularJS. Обратите внимание, что я удалил ().

Вы также можете установить свойство myPage.onInfiniteScroll в любую функцию, которую хотите.

Пример: http://codepen.io/frankdiox/pen/GZEyjR, http://codepen.io/IliaSky/pen/wGqRRz

UPDATE: Был на самом деле ошибка в этой функции, которая была зафиксирована уже в beta.9.

Правильное использование бесконечной прокрутки в Vanilla JS, как это:

<ons-page on-infinite-scroll="myHandler"> ... </ons-page>

var myHandler = function(done) { 
    console.log('do something'); 
    done(); 
} 

В угловых 1 (одинаковый объем):

<ons-page ng-infinite-scroll="myHandler"> ... </ons-page>

$scope.myHandler = function(done) { 
    console.log('do something'); 
    done(); 
} 
+0

Благодаря Фран, Да, я использую beta8, я изменился на «nextItems», и он все еще не работает, есть ли y способ отладки и устранения проблемы? – RezaRahmati

+0

Кстати, метод вызван только в первый раз, я имею в виду, если вы прокрутите список до конца, вы увидите предупреждение, затем, если вы подниметесь и прокрутите вниз, больше нет сообщения, должно быть так, или это ошибка? – RezaRahmati

+0

Обновление: я загрузил быстрый старт с сайта и заменил lib \ onsenui на бета-версию 8, затем я изменил страницу в файле Material.html как '' и я добавляю 'nextItems' в контроллер, и все же он не работает, тогда я сравнивал файлы onsen.js и onsen-angualr.js с cdn и моей загруженной версией, и они тоже такие же. – RezaRahmati