createdAt Azalan verileri almak nasıl yapılır:ngInfiniteScroll Aşağıdaki verilere sahip Mesajları kaydetmek için Firebase kullanıyorum
createdAt: "Sun Apr 03 2016 18:32:46 GMT-0300 (BRT)"
Ne elde etmek çalışıyorum birinci ve ardından En son mesajları elde etmektir Kullanıcı aşağı kaydırırken eskileri yükleyin.
ngInfiniteScroll kullanılarak alınan iletilerle, <div ng-repeat="post in posts | orderBy:'-createdAt'">
numaralı telefonu kullanarak sipariş verebiliyorum ancak ngInfiniteScroll eski postaları ilk önce iade etmeye devam edebiliyor. Sipariş veriyorum ama eskileri sipariş ediyorum.
ngInfiniteScroll'da aynı mantığı ("-createdAt"
) kullanmayı denedim, ancak etkili değildi.
var baseRef = new Firebase(FBURL).child("posts");
var scrollRef = new Firebase.util.Scroll(baseRef, "createdAt");
$scope.posts = $firebaseArray(scrollRef);
$scope.posts.scroll = scrollRef.scroll;
Güvenlik ve kurallar:
"posts": {
".read": true,
".indexOn": "createdAt",
"$post": {
".read": true,
".write": true,
"$other": {
".validate": true
}
}
}
Sorununuzun, Tarih nesnesi olarak değil, tarih olarak dizilmiş olarak sipariş verdiğinizi düşünüyorum. Bu cevaba bakın: http://stackoverflow.com/a/25306447/752142. – illagrenan
@illagrenan SiparişimBen iyi çalışıyor ... Ya da Tarih'in değiştiğini mi söylüyorsunuz ngInfiniteScroll, "-createdAt" 'ı tanıyacaktır? – adolfosrs
Yani basit ngRepeat kullanarak ngInfiniteScroll olmadan bunları yazdırırsanız, öğeleriniz doğru şekilde sipariş edilir? Ve eğer 'infinite-scroll = 'kullanırsanız' someService.nextPage() '' öğeler sipariş edilmez? Doğrumuyum? Basit bir çözüm: API'den öğeler almak, bunları servisinize/kontrol cihazınıza sipariş etmek ve daha sonra emri verilen verileri "sonsuz kaydırma =" myMethod() '') döndürmek olabilir. – illagrenan