Подтвердить что ты не робот

Как загрузить последние сообщения с баллами выше 100?

СИТУАЦИЯ:

В настоящее время я загружаю последние сообщения в хронологическом порядке с помощью этого кода:


CODE:

        $scope.data = [];
        var _n = Math.ceil(($(window).height() - 50) / (350)) + 1;
        var _start = <%= lastID %>;
        var firstElementsLoaded = false;

        $scope.getDataset = function() {

            fb.orderByChild('id').startAt(_start).limitToFirst(_n).on("child_added", function(dataSnapshot) {

                _start = dataSnapshot.child("id").val() + 1;
                console.log("LAST TRUE ID:"+ _start);

                $scope.data.push(dataSnapshot.val());
                $scope.$apply()
                console.log("THE VALUE:"+$scope.data);

                firstElementsLoaded = true;
            });
        };


        $scope.getDataset();

Вопрос:

Как мне изменить его, чтобы по существу иметь то же самое поведение, но только для запросов сообщений с оценками выше 100 в соответствии с их хронологическим порядком?


UPDATE:

Наконец-то я нашел способ использовать метод "создать другой индекс" с моей архитектурой. Но остается одно препятствие:

Как скопировать дочернийNode из одного node в другой?

4b9b3361

Ответ 1

Я переосмыслил свою архитектуру и создал специальный индекс для верхних сообщений:

if (funPost.score >= global.hotNumber && funPost.hot == false) {
            var hotPostRef = firebase.database().ref("hot/section/"+key);
            var hotPost = {
                title: funPost.title,
                image: funPost.image,
                id: funPost.id,
                key: funPost.key
            }
            hotPostRef.set(hotPost);
            funPostRef.update({"hot": true});
        }
   else if (funPost.score <= (global.hotNumber - 25) && funPost.hot == true) {
        var hotPostRef = firebase.database().ref("hot/section/"+key);
        hotPostRef.remove();
        funPostRef.update({"hot": false});
   }