В моем приложении я визуализирую карточки qliksense.
) В стороне, у меня там больше 100 карточек. Для повышения производительности мне нужно в первый раз загрузить только 5 карт. Когда прокрутка достигнет дна, мне нужно загрузить следующие 5 карт.
) Таким образом, мне нужно загружать 5 карт по 5 карт каждый раз после завершения прокрутки.
Нормальная angularjs функция, которую я пробовал. Но карты qliksense не обрабатываются.
Пожалуйста, посмотрите на код ниже,
my Html. html:
<div class="left-pane" infinite-scroll="myPagingFunction()" infinite-scroll-distance="3" directive-when-scrolled="loadMore()">
<aside ng-class="{'type-two': getTabLength.length <= 2}" class="aside-elem" info-pop-up="cards" screen-percent="25">
<div class="qlikrender" ng-repeat="card in cards | limitTo: limit" >
{{card.objectid}}
</div>
</aside>
</div>
myDirective. js:
app.directive("directiveWhenScrolled", function() {
return function(scope, elm, attr) {
var raw = elm[0];
elm.bind('scroll', function() {
if (raw.scrollTop + raw.offsetHeight >= raw.scrollHeight) {
scope.$apply(attr.directiveWhenScrolled);
}
});
};
});
myController. js:
//$scope.cards - This is having all 100 cards
$scope.loadMore = function() {
var lastIndex = $scope.cards.length - 1;
for (var j = 1; j <= 5; j++) {
$scope.cards.push($scope.cards[lastIndex + j]);
}
$scope.cards.forEach(function(card) {
app.getObject(card.objectid, card.objectid, { noSelections: true });
});
};
Это код, который я написал. Но не повезло. У меня это не работает. Я хочу показать пять пяти записей после досягаемости нижней части прокрутки. Может ли кто-нибудь помочь мне, как я могу это сделать?