Почему событие Firebase 'child_added' срабатывает после события 'value'?

По данным Firebaseдокументация:

Ценность событийвсегда срабатывает в последнюю очередь и гарантированно содержат обновления от любых других событий, которые произошли до того, как был сделан этот снимок.

Вот простой пример (jsbin) гдеchild_added пожарыдо value, Это поведение было подтверждено с использованием последней версии Firebase (2.3.1):

var ref = new Firebase("https://reform.firebaseio.com");
ref.child('pets').once('value', function(snapshot) {

    snapshot.forEach(function(pet) {
        console.log("Pet: " + pet.key());

        pet.ref().child('food').once('value', function (foods) {
            console.log('value event called for ' + pet.key());
        });

        pet.ref().child('food').once('child_added', function (foods) {
            console.log('child_added event called for ' + pet.key());
        });
    });
});

В этом примере журнал консоли будет:

Pet: cat
Pet: dog
value event called for cat
child_added event called for cat
value event called for dog
child_added event called for dog

Почемуchild_added Событие пожара последним в этом случае? Не нарушает ли это гарантию на документацию?

Ответы на вопрос(0)

Ваш ответ на вопрос