Búsqueda de sitios web

node.js - la propiedad 'apps' no está incluida en el valor de retorno de 'firebase-admin'


Estoy tratando de decidir si llamar o no a initializeApp() es necesario basándome en la propiedad 'apps' que devuelve 'firebase-admin'. En el primer intento funcionó como se esperaba, pero después comenzó a aparecer este error sin importar cuántas veces lo intentara.

Error :

uncaughtException FirebaseAppError: La aplicación predeterminada de Firebase ya existe. Esto significa que llamaste a initializeApp() más de una vez sin proporcionar un nombre de aplicación como segundo argumento. En la mayoría de los casos, solo necesitas llamar a initializeApp() una vez. Pero si realmente deseas inicializar varias aplicaciones, pasa un segundo argumento a initializeApp() para darle a cada aplicación un nombre único.

Código :

import * as firebase from 'firebase-admin';
console.log(firebase); // add this on second try
if (!firebase.apps.length) {
  firebase.initializeApp({
      credential: firebase.credential.cert(some config here),
      databaseURL: 'some url here',
  });
}

cuando veo la consola, la salida es como:

FirebaseNamespace {
  __esModule: true,
  credential: {
    cert: [Function],
    refreshToken: [Function],
    applicationDefault: [Function]
  },
  SDK_VERSION: '9.5.0',
  Promise: [Function: Promise],
  INTERNAL: FirebaseNamespaceInternals { firebase_: [Circular], apps_: {} },
  default: [Circular]
}

No existe tal propiedad como 'apps'. ¿Alguien sabe por qué esta propiedad no existe?

ACTUALIZACIÓN :

He resuelto este problema por mí mismo. Fue un error fácil.

Después de inspeccionar los códigos, encontré otro lugar donde está escrita la misma lógica exacta. Esta lógica se ejecuta por segunda vez, así que la segunda está dando este error.