Recentemente ho iniziato a imparare AngularJS + Firebase. Sto cercando di scrivere nel mio Firebase un oggetto come questo:
{
title: "Personal Information",
say: [
[{ "eng": "What's", "ukr": "Що є" }, { "eng": "your", "ukr": "твоє" }, { "eng": "surname?", "ukr": "прізвище?" }],
[{ "eng": "Smith", "ukr": "Сміт" }],
[{ "eng": "What's", "ukr": "Що є" }, { "eng": "your", "ukr": "твоє" }, { "eng": "first", "ukr": "перше" }, { "eng": "name?", "ukr": "ім'я?(не фамілія)" }]
]
}
con la linea:
lessondata.add($scope.topic);
dove 'lessondata' è il servizio realizzato con angularFireCollection() e $ scope.topic - oggetto associato alla mia interfaccia utente. Ma si è verificato il seguente errore: Firebase.push non riuscito: il primo argomento contiene una chiave non valida ($$ hashKey) nella proprietà 'say.0.0'. Le chiavi devono essere stringhe non vuoti e non possono contenere "", "#", "$", "/", "[" o "]"
Come ho capito Firebase non lo fanno consenti di usare 0 come chiave anche se è una chiave in un array collegato per cui la chiave zero è naturale. Quindi dovrei cambiare la mia struttura di oggetti in qualche istanza hardcoded o mi manca qualcosa? Grazie in anticipo!
Cool hack! Grazie mille! – user2587800
angular.copy() dovrebbe sbarazzarsi anche della proprietà $$ hashKey. – Anant
Bello. Questo mi ha aiutato nel mostrare iterativamente i dati con ng-repeat prima di inviare i dati a fb. Comunque è abbastanza schifoso. =/ – Swordfish0321