2015-11-30 4 views

ответ

3

База данных Firebase является по существу одним объектом JSON.

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

Взгляните на эту базу данных примеров.

{ 
    "items": { 
    "1": { 
     "title": "Hi" 
    }, 
    "2": { 
     "title": "Bye" 
    } 
    } 
} 

Там нет никакого способа, с помощью JavaScript SDK или AngularFire, читать только родительские ключи 1 и 2 в разделе «пунктов».

Если вы хотите только прочитать родительские ключи, , вам необходимо создать индекс для них в базе данных Firebase.

{ 
    "items": { 
    "1": { 
     "title": "Hi" 
    }, 
    "2": { 
     "title": "Bye" 
    } 
    }, 
    "itemKeys": { 
    "1": "Hi", 
    "2": "Bye" 
    } 
} 

Теперь вы можете создать ссылку на itemKeys месте и передать в $firebaseArray() или $firebaseObject().

var ref = new Firebase('<my-firebase-app>.firebaseio.com/itemKeys'); 
var syncArray = $firebaseArray(ref); 

If you're concerned with keeping two separate data structures consistent, check out the client-side fan-out feature.

+0

Thanks David. Это дало идею. –

+0

Нет проблем! Если мой ответ сработал для вас, отметьте его как принятый. Хорошо держать оставшуюся без ответа очередь. –

0
shallow=true 

Если вы используете REST API добавьте в конец вашего URL запроса. Нравится (-а)

https://docs-examples.firebaseio.com/rest/retrieving-data.json?shallow=true