В firebase расчитана я прочитал о массиве: https://www.firebase.com/docs/web/guide/understanding-data.html#section-arrays-in-firebaseFirebase силы использовать карту, а не массив
особенно:
Однако, чтобы помочь разработчикам, хранящих массивы в Firebase базе данных, когда данные прочитайте с помощью val() или через REST api, если данные выглядят как массив, клиенты Firebase будут отображать его как массив. В частности, если все ключи являются целыми числами, а более половины ключей между 0 и максимальным ключом в объекте имеют непустые значения, тогда клиенты Firebase будут отображать его как массив. Эта последняя важна, чтобы иметь в виду.
Есть ли способ заставить firebase использовать только карту и никогда не преобразовывать данные в массив? Любая конфигурация?
В моем примере в firebase я получил структуру так:
{ "0": {
"drivers" : {
"12" : {
"latitude" : 50.076574,
"longitude" : 19.9209708,
"timestamp" : 1456311442329
},
"13" : {
"latitude" : 50.0166148,
"longitude" : 20.9863258,
"timestamp" : 1456395866163
}
}
}
},
{ "1" : {
"drivers" : {
"10" : {
"driver_id" : 10,
"latitude" : 50.076574,
"longitude" : 19.9209708,
"timestamp" : 1456311442329
},
"17" : {
"driver_id" : 17,
"latitude" : 50.0166148,
"longitude" : 20.9863258,
"timestamp" : 1456395866163
}
}
}
}
И в Java Script я прочитал JSON как массив, потому что firebase умна и конвертировать мои данные в массив, но я ожидаю карты. Такое поведение для меня очень неустойчивое.
[ {
"drivers" : {
"12" : {
"latitude" : 50.076574,
"longitude" : 19.9209708,
"timestamp" : 1456311442329
},
"13" : {
"latitude" : 50.0166148,
"longitude" : 20.9863258,
"timestamp" : 1456395866163
}
}
}, {
"drivers" : {
"10" : {
"driver_id" : 10,
"latitude" : 50.076574,
"longitude" : 19.9209708,
"timestamp" : 1456311442329
},
"17" : {
"driver_id" : 17,
"latitude" : 50.0166148,
"longitude" : 20.9863258,
"timestamp" : 1456395866163
}
}
} ]
Можете ли вы также добавить код, который используете для чтения в данных? –
Ohh Noo его мой foult i user $ firebaseArray, но теперь я перехожу на $ firebaseObject и работает нормально, извините – luckybastard