Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

163
Views
¿Cómo lidiar con el valor nulo en la transacción de la base de datos en tiempo real?

Me gustaría tener un contador que podamos incrementar o decrementar usando la transacción. Me gustaría no inicializar el contador a 0, sino que no existe al inicio. Así que escribiría la transacción de incremento de la siguiente manera

 ref.transaction(function(counterValue){ if (counterValue == null) return 1 else return (counterValue +1) },function(error,committed,snapshot){ if (error){//fail }else if (!committed){//aborted }else{//successfull } })

Pero no estoy seguro de si la transacción se ejecutará correctamente, ya que el valor nulo de counterValue podría significar que no existe un nodo, pero también cuando el caché local está vacío. ¿Alguien podría aconsejarme qué debo hacer?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

el valor nulo de counterValue podría significar que no existe un nodo, pero también cuando el caché local está vacío

Si el valor existente se informa como null porque la memoria caché local no contiene un valor actual, el nuevo valor que devuelve realmente no importa, ya que su controlador se volverá a ejecutar de todos modos.

Así que su manejador me parece bien, aunque normalmente lo acorto a:

 return (counterValue || 0) + 1
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!