Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

152
Vistas
Habilitación fuera de línea para la base de datos en tiempo real de firebase usando la aplicación Ionic con capacitor

Estoy usando ionic con la base de datos en tiempo real de Firebase y el condensador 3. Tengo la intención de habilitar las capacidades fuera de línea. Creé la aplicación usando la compilación de tapa iónica y luego la abrí en xcode. Luego, siguiendo la URL https://firebase.google.com/docs/database/ios/offline-capabilities , agregué el siguiente código en AppDelegate.swift

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch. FirebaseApp.configure() Database.database().isPersistenceEnabled = true return true }

Ahora, para probar, ejecuté la aplicación con wifi y obtuve los datos de firebase db. Después de esto, eliminé la aplicación y apagué el wifi. Sin embargo, al iniciar la aplicación, no carga los datos.

¿Hay algo más que me esté perdiendo aquí?

mi archivo key pod tiene:

 target 'App' do capacitor_pods # Add your Pods here pod 'FirebaseCore', '7.11.0' # Add this line pod 'Firebase/Database', '7.11.0' # Add this line end

A continuación se muestra mi código que no funciona y se esperaba que:

 getSeedConfig(){ return new Promise((resolve, reject) =>{ const doc = ref(this.db, 'config/seed'); get(doc).then((snapshot) => { if (snapshot.exists()) { resolve(snapshot.val()) } else { resolve(null) } }).catch((error) => { reject(error) }); }) }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Cuando se utiliza una API moderna en JavaScript, ya no hay muchos casos en los que necesite devolver una promesa personalizada.

Por lo que puedo decir este código que ahora tienes:

 getSeedConfig(){ return new Promise((resolve, reject) =>{ const doc = ref(this.db, 'config/seed'); get(doc).then((snapshot) => { if (snapshot.exists()) { resolve(snapshot.val()) } else { resolve(null) } }).catch((error) => { reject(error) }); }) }

Se puede acortar a:

 getSeedConfig(){ const doc = ref(this.db, 'config/seed'); return get(doc).then((snapshot) => { return snapshot.val(); // 👈 returns null when the snapshot does not exist }) }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda