Ich habe ein Objekt wie:Firebase wird keine Schlüssel mit Nullwerten speichern
var _json = { "objects":[{
"type":"path", "originX":"center", "originY":"center", "left":48.59,
"top":132.5, "width":64.5,"height":173, "fill":null,"stroke":"#3f7cc4",
"strokeWidth":12,"strokeDashArray":null
}]}
ich dieses Objekt speichern mit Firebase als:
var myDataRef = new Firebase(<...>);
myDataRef.child("saved_projects").child(authData.uid).update({'P3': _json});
Aber, wenn ich das gleiche mit Firebase abrufen on
Verfahren und den Wert erhalten, wie:
snapshot.val()
ich das Objekt aber Schlüssel miterhaltenWerte bekam das heißt entfernt bekam ich nur:
{"objects":[ {"type":"path", "originX":"center",
"originY":"center","left":48.59, "top":132.5,"width":64.5,
"height":173, "stroke":"#3f7cc4","strokeWidth":12
}]}
Dies wird mir einige seltsame Probleme verursachen, da ich Fabric.js
bin mit und es braucht diese Werte. Bitte helfen!
EDIT/UPDATE (Hack)
Im Moment, ich bin eine seltsame HACK verwenden, bevor das Objekt zu speichern Firebase ich alle null
Werte 0
bin zu konvertieren. Aber ich möchte einen schöneren Weg kennen lernen.
function recursivelyReplaceNullToZero(j) {
for (var i in j){
if (typeof j[i] === "object") {
recursivelyReplaceNullToZero(j[i]);
}
if (j[i] === null) {
j[i] = 0;
}
}
}
recursivelyReplaceNullToZero(_json);
Firebase entfernt Knoten mit Nullwerten, da können wir Ihnen nicht viel helfen. https://www.firebase.com/docs/web/api/firebase/set.html "Das Übergeben von null für den neuen Wert entspricht dem Aufrufen von remove(); alle Daten an diesem Speicherort oder an einem untergeordneten Speicherort werden gelöscht." –
Das sieht wie ein [XY-Problem] aus (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem/66378#66378) und Sie sollten wahrscheinlich mit der (fehlerhaften?) Verwendung beginnen Fall, den Sie versuchen zu lösen. – Kato