1

angular-ui ui-scroll を使用しています。下にスクロールすると、期待どおりにアイテムが追加され続けます。ただし、上にスクロールすると、最後にロードしたバッチの先頭で停止します。たとえば、100 個のアイテムがあり、バッファ サイズが 10 で、下にスクロールしてアイテム 61 ~ 70 が表示されている場合、上にスクロールするとアイテム 51 ~ 60 が表示されます。しかし、項目 61 を超えて上にスクロールすることはできません。何が間違っているのかわかりません。

html は次のとおりです。

<div row="row" ui-scroll="row in transactionSource" buffer-size="10" >{{row.data}}</sq-transaction>

スクリプトは次のとおりです。

        $scope.transactionSource = {

        get: function (index, count, callback) {
            if (index < 0) {
                callback([])
           }
            else {
                var buffer = 10;
                var end = ctrl.nextIndex + buffer;
                if (end > ctrl.transactions.length) end = ctrl.transactions.length;
                var items = ctrl.transactions.slice(ctrl.nextIndex, end);
                ctrl.nextIndex = end;

                callback(items);
            }
       }
    };

それが関連している場合、受信したインデックスとカウントの値を console.log に記録すると、最初の 10 のロード後にインデックス -9 が返されます (この場合、空の配列が返されます。これを行わないと、配列全体が返されます)。ロードされます)。上にスクロールすると、console.log メッセージがまったく表示されないため、下にスクロールするときにのみ「get」が呼び出されるようです。

あらゆる助けを前もって感謝します。

4

1 に答える 1