Firebase: $ save for an object not yet created

I am trying to figure out how to store the result of an object serviceIdin servicesfor a parent with a name provider1when the object serviceshas not yet been created.

My Firebase data looks like this:

"providers" : {
  "provider1" : {
    "name" : "The Whittington Hospital",
  }
}

This is how I save the result serviceId:

for (var providerKey in service.providers) {                       
  var providerId = providers.$getRecord(providerKey);             
  providerId.services[serviceId] = true;                          
  providers.$save(providerId);                                     
}

But I can not set [serviceId]in true, because the object servicesdoes not exist yet, it is undefined.

Firebase does not allow creating empty objects, otherwise I will have an empty services: {}obj under mine provider1.

How can I get around such a problem. Any help is appreciated. Thanks in advance!

+4
source share
1

, :

for (var providerKey in service.providers) {                       
    var providerId = providers.$getRecord(providerKey);    
    if(!providerId.services){
        providerId.services = {};
    }
    providerId.services[serviceId] = true;                          
    providers.$save(providerId);                                     
}

plunkr : http://plnkr.co/edit/7akqoorVSdpap99RfF1C?p=preview

, , , , , , , .

+5

Source: https://habr.com/ru/post/1584940/


All Articles