gpt4 book ai didi

angularjs - 如何让 ngInfiniteScroll 通过createdAt 降序检索数据

转载 作者:行者123 更新时间:2023-12-03 06:44:46 25 4
gpt4 key购买 nike

我使用 firebase 保存具有以下数据的帖子:

createdAt: "Sun Apr 03 2016 18:32:46 GMT-0300 (BRT)"

我想要实现的是首先获取最新的帖子,然后在用户向下滚动时加载较旧的帖子。

通过使用 ngInfiniteScroll 检索帖子,我可以使用 <div ng-repeat="post in posts | orderBy:'-createdAt'"> 订购 desc但 ngInfiniteScroll 始终首先返回旧帖子。我正在订购,但我订购的是较旧的。

我已经尝试在 ngInfiniteScroll 中使用相同的逻辑( "-createdAt" ),但它没有效果。

<小时/>

我的js差不多是这样的:

  var baseRef = new Firebase(FBURL).child("posts");
var scrollRef = new Firebase.util.Scroll(baseRef, "createdAt");
$scope.posts = $firebaseArray(scrollRef);
$scope.posts.scroll = scrollRef.scroll;

安全和规则:

"posts": {
".read": true,
".indexOn": "createdAt",
"$post": {
".read": true,
".write": true,
"$other": {
".validate": true
}
}
}

最佳答案

看起来您找到了解决方案,但您使用 orderBy 的管道处于正确的轨道上,但只需尝试稍微调整一下即可。尝试使用 orderBy:'+':true",其中 orderBy 表示您想按某些内容排序,而 +:true 表示顺序它的任何新内容都在顶部,其中 -:true 表示在底部订购新内容。但是您可以查看它的 Angular 文档 here 。所以如果在 HTML 端处理它它看起来像这样 ng-repeat="post in posts| orderBy:'+':true" 或:

    <div ng-repeat="post in posts| orderBy:'+':true">
[....post info here]
</div>

但是尝试一下,希望它有帮助。

关于angularjs - 如何让 ngInfiniteScroll 通过createdAt 降序检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36391667/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com