Firebase-tools: Las funciones solo implementan errores, haciendo referencia a la carpeta node_modules de la aplicación principal

Creado en 19 abr. 2018  ·  21Comentarios  ·  Fuente: firebase/firebase-tools

Información de la versión

base de fuego: 3.18.4
nodo: 8.10.0
npm: 5.6.0

Información de la plataforma

ventanas

pasos para reproducir

firebase deploy --only functions

Comportamiento esperado

Las funciones de la nube de Firebase se implementarán correctamente.

Comportamiento real

Recibí un error porque la compilación de funciones en la nube parece estar haciendo referencia a la carpeta node_modules desde el nivel raíz de la aplicación. @types/d3 y @types/googlemaps están incluidos en mi archivo de aplicaciones package.json y no en mi archivo de funciones package.json.

```PS [RUTA EN LA MÁQUINA LOCAL]> firebase deployment --solo funciones

=== Implementando en 'PROJECT_NAME'...

estoy desplegando funciones
Comando en ejecución: npm --prefix "$RESOURCE_DIR" ejecutar pelusa

functions@ lint [RUTA EN LA MÁQUINA LOCAL]\functions
tslint --proyecto tsconfig.json

Comando en ejecución: npm --prefix "$RESOURCE_DIR" ejecutar compilación

functions@ build [RUTA EN LA MÁQUINA LOCAL]\funciones
tsc

../node_modules/@types/d3-axis/index.d.ts(50,36): error TS2304: No se puede encontrar el nombre 'SVGSVGElement'.
../node_modules/@types/d3-axis/index.d.ts(50,52): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(32,23): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(39,27): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(50,27): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(63,27): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(63,77): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(70,27): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(81,32): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(94,32): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(94,72): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(98,23): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(121,28): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(126,23): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(138,30): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(164,36): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(191,45): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-brush/index.d.ts(223,38): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-chord/index.d.ts(360,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-chord/index.d.ts(368,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-dispatch/index.d.ts(8,37): error TS2304: No se puede encontrar el nombre 'EventTarget'.
../node_modules/@types/d3-dispatch/index.d.ts(18,36): error TS2304: No se puede encontrar el nombre 'EventTarget'.
../node_modules/@types/d3-drag/index.d.ts(19,38): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-drag/index.d.ts(24,36): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-drag/index.d.ts(24,50): error TS2304: No se puede encontrar el nombre 'SVGSVGElement'.
../node_modules/@types/d3-drag/index.d.ts(24,66): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-drag/index.d.ts(390,37): error TS2304: No se puede encontrar el nombre 'Ventana'.
../node_modules/@types/d3-drag/index.d.ts(402,36): error TS2304: No se puede encontrar el nombre 'Ventana'.
../node_modules/@types/d3-fetch/index.d.ts(18,42): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(18,64): error TS2304: No se puede encontrar el nombre 'Blob'.
../node_modules/@types/d3-fetch/index.d.ts(27,44): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(41,12): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(82,11): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(100,12): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(145,11): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(157,42): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(157,64): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/d3-fetch/index.d.ts(167,74): error TS2304: No se puede encontrar el nombre 'HTMLImageElement'.
../node_modules/@types/d3-fetch/index.d.ts(179,72): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(189,41): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(189,63): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/d3-fetch/index.d.ts(199,42): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(212,12): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(254,11): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(266,41): error TS2304: No se puede encontrar el nombre 'RequestInit'.
../node_modules/@types/d3-fetch/index.d.ts(266,63): error TS2304: No se puede encontrar el nombre 'XMLDocument'.
../node_modules/@types/d3-selection/index.d.ts(17,24): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(17,49): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/d3-selection/index.d.ts(17,60): error TS2304: No se puede encontrar el nombre 'Ventana'.
../node_modules/@types/d3-selection/index.d.ts(34,20): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/d3-selection/index.d.ts(36,27): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/d3-selection/index.d.ts(36,34): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/d3-selection/index.d.ts(37,28): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/d3-selection/index.d.ts(37,44): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/d3-selection/index.d.ts(37,51): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/d3-selection/index.d.ts(38,39): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(39,42): error TS2304: No se puede encontrar el nombre 'NodeListOf'.
../node_modules/@types/d3-selection/index.d.ts(39,53): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(45,32): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-selection/index.d.ts(45,46): error TS2304: No se puede encontrar el nombre 'SVGSVGElement'.
../node_modules/@types/d3-selection/index.d.ts(45,62): error TS2304: No se puede encontrar el nombre 'SVGGElement'.
../node_modules/@types/d3-selection/index.d.ts(110,110): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-selection/index.d.ts(142,113): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-selection/index.d.ts(873,43): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-selection/index.d.ts(977,61): error TS2304: No se puede encontrar el nombre 'TouchList'.
../node_modules/@types/d3-selection/index.d.ts(989,64): error TS2304: No se puede encontrar el nombre 'TouchList'.
../node_modules/@types/d3-selection/index.d.ts(1013,29): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1025,15): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1033,18): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1040,15): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1040,35): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1108,33): error TS2304: No se puede encontrar el nombre 'Ventana'.
../node_modules/@types/d3-selection/index.d.ts(1108,42): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/d3-selection/index.d.ts(1108,53): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1108,63): error TS2304: No se puede encontrar el nombre 'Ventana'.
../node_modules/@types/d3-selection/index.d.ts(1122,44): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1133,45): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1154,46): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1163,49): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/d3-selection/index.d.ts(1163,97): error TS2304: No se puede encontrar el nombre 'NodeListOf'.
../node_modules/@types/d3-shape/index.d.ts(304,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(312,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(757,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(765,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(935,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(943,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1230,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1238,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1536,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1544,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1650,15): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(1686,15): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2016,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2024,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2196,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2204,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2273,19): error TS2304: No se puede encontrar el nombre 'CanvasPathMethods'.
../node_modules/@types/d3-shape/index.d.ts(2358,16): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-shape/index.d.ts(2366,22): error TS2304: No se puede encontrar el nombre 'CanvasRenderingContext2D'.
../node_modules/@types/d3-transition/index.d.ts(572,65): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-transition/index.d.ts(583,104): error TS2304: No se puede encontrar el nombre 'HTMLElement'.
../node_modules/@types/d3-zoom/index.d.ts(20,37): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(33,29): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(37,19): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(54,28): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/googlemaps/index.d.ts(788,30): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(799,36): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/googlemaps/index.d.ts(812,26): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/googlemaps/index.d.ts(1136,20): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1137,22): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1138,18): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1139,22): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1140,23): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1141,23): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1142,29): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1143,24): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1220,21): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1225,25): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1236,17): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1653,32): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/googlemaps/index.d.ts(1668,64): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/googlemaps/index.d.ts(1668,75): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1669,27): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1692,64): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/googlemaps/index.d.ts(1692,75): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1693,27): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1709,64): error TS2304: No se puede encontrar el nombre 'Documento'.
../node_modules/@types/googlemaps/index.d.ts(1709,75): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1710,27): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1941,32): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(1942,28): error TS2304: No se puede encontrar el nombre 'Nodo'.
../node_modules/@types/googlemaps/index.d.ts(2394,36): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(2398,29): error TS2304: No se puede encontrar el nombre 'Elemento'.
../node_modules/@types/googlemaps/index.d.ts(2455,37): error TS2304: No se puede encontrar el nombre 'HTMLInputElement'.
../node_modules/@types/googlemaps/index.d.ts(2616,40): error TS2304: No se puede encontrar el nombre 'HTMLDivElement'.
../node_modules/@types/googlemaps/index.d.ts(2663,37): error TS2304: No se puede encontrar el nombre 'HTMLInputElement'.
npm ¡ERROR! código ELIFECICLO
npm ¡ERROR! error 2
npm ¡ERROR! funciones@ compilación: tsc
npm ¡ERROR! Estado de salida 2
npm ¡ERROR!
npm ¡ERROR! Error en el script de compilación functions@.
npm ¡ERROR! Esto probablemente no sea un problema con npm. Es probable que haya una salida de registro adicional arriba.

npm ¡ERROR! Un registro completo de esta ejecución se puede encontrar en:
npm ¡ERROR! [RUTA EN LA MÁQUINA LOCAL]\AppData\Roaming\npm-cache_logs\2018-04-19T16_10_21_812Z-debug.log

Error: error de preimplementación de funciones: el comando finalizó con un código de salida distinto de cero 2```

Comentario más útil

@laurenzlong ¡ Gracias de nuevo! Eso me ayudó a rastrear lo que necesitaba hacer para resolver mi problema.

Para cualquier otra persona que se encuentre con este problema: pude hacer que las funciones se compilaran correctamente modificando el script de compilación de funciones para usar tsc --skipLibCheck lugar de tsc desde dentro de functions/package.json . Esto le dice al compilador TypeScript que omita la verificación de tipo de todos los archivos de declaración.

Todos 21 comentarios

Si ejecutó npm run build dentro de su carpeta de funciones, ¿tiene éxito?

Si ejecutó npm run build dentro de su carpeta de funciones, ¿tiene éxito?

No es asi. Mismo error.

Entonces tiene algo que ver con su configuración de TypeScript o cómo importa módulos dentro de su código. No es un error con firebase-tools.

@laurenzlong Ok, gracias por tomarse el tiempo para ayudarme en esto. Supongo que me pregunto por qué las funciones de la nube de Firebase incluso se preocupan por los paquetes que incluyo en mi aplicación. Creé una demostración simplificada sobre el error que estoy recibiendo. Las funciones de la nube funcionan bien hasta que incluyo algunas definiciones de tipo como @types/googlemaps . Yo pensaría que las funciones de la nube deberían construirse independientemente de cualquier paquete de definición de tipo que incluya en el nivel raíz de esta demostración.

"npm run build" usa "tsc" regular para construir sus archivos. Esto no tiene nada que ver con Firebase o Cloud Functions.

@laurenzlong ¡ Gracias de nuevo! Eso me ayudó a rastrear lo que necesitaba hacer para resolver mi problema.

Para cualquier otra persona que se encuentre con este problema: pude hacer que las funciones se compilaran correctamente modificando el script de compilación de funciones para usar tsc --skipLibCheck lugar de tsc desde dentro de functions/package.json . Esto le dice al compilador TypeScript que omita la verificación de tipo de todos los archivos de declaración.

@dylanjmcdonald o póngalo en el archivo tsconfig.json:

    // "isolatedModules": true,               /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */

    "skipLibCheck": true,
    /* Strict Type-Checking Options */
    "strict": true,

Gracias por el aviso, por cierto 👍

Pero, ¿y si no quiere omitir la verificación de la declaración? En una de mis funciones en la nube, uso Objects.entries(), que es es2017. Lo configuré en tsconfig.json pero debido a que lo está saltando, arroja un error cuando se ejecuta la función. ¿Alguna otra forma de evitar esto?

Solucioné el mismo problema agregando:
"tipoRaíces": [
"./funciones/módulos_nodo/@tipos"
]
a tsconfig.json en la carpeta de funciones

Esto sucede con el mecanografiado autogenerado de stock cuando las funciones se inicializan para mí.

Solo el código generado automáticamente y las importaciones que son exactamente como en los ejemplos.

Parece ser porque tsc buscará tipos en su árbol de procesos e intentará verificar todo en los archivos @types pero nada más, ¿así que las cosas van a la mierda?

Creo que la solución más correcta a esto es hacer lo que sugirió Gongevangen. agregue "node_modules/@types" a typeRoots para que el algoritmo de resolución del módulo no se vuelva loco en el árbol.

Obtuve el mismo problema gracias a @dylanjmcdonald. Lo resolví usando tsc --skipLibCheck.

@dylanjmcdonald tsc --skipLibCheck en ./functions/package.json funcionó para mí, ¡gracias!

Lo arreglé agregando "dom" a compilerOptions.lib en ./functions/tsconfig.json .

{
  "compilerOptions": {
    "lib": ["es6", "dom"],
    "module": "commonjs",
    "noImplicitReturns": true,
    "outDir": "lib",
    "sourceMap": true,
    "target": "es6"
  },
  "compileOnSave": true,
  "include": [
    "src"
  ]
}

Esto debería funcionar también. Usé la solución
{ "compilerOptions": { "lib": ["es6"], "module": "commonjs", "noImplicitReturns": true, "outDir": "lib", "sourceMap": true, "target": "es6", "skipLibCheck": true, "typeRoots": ["./functions/node_modules/@types"] }, "compileOnSave": true, "include": [ "src" ] }

Es genial que haya soluciones para esto, pero una de estas soluciones realmente debería estar en el .tsconfig generado por firebase init . ¿Alguien sabe cómo podemos reabrir este problema?

Podría volver a abrir este problema, pero puedo decirle que probablemente no agregaremos dom a la propiedad lib de la plantilla tsconfig.json . Está destinado como mínimo a hacer que un desarrollador despegue y ese valor predeterminado no necesita dom . Si cree firmemente lo contrario, siéntase libre de abrir una solicitud de extracción en este repositorio cambiando las plantillas, pero no creo que sea un cambio que haríamos.

Gracias Señor

Asegúrese de que su archivo .ts tenga el mismo nombre que .js en lib e inclúyalo también en package.json

Solo para aclarar que la solución de @gongevangen funciona, pero asegúrese de colocar la tecla "typeRoots" dentro de "compilerOptions" :

{
  "compilerOptions": {
    "module": "commonjs",
    "noImplicitReturns": true,
    "noUnusedLocals": true,
    "outDir": "lib",
    "sourceMap": true,
    "strict": true,
    "target": "es2017",
    "typeRoots": [
      "./functions/node_modules/@types"
    ],
  },
  "compileOnSave": true,
  "include": [
    "src"
  ],
}

Un poco confundido en cuanto a por qué esto no se incluiría en el modelo... o incluso se mencionaría en alguna parte de cualquiera de los tutoriales de Firebase.

Estoy de acuerdo con @evanb2 : ¡esto solo me costó una hora! Seguramente valdría la pena al menos mencionarlo aquí: https://firebase.google.com/docs/functions/typescript si no lo incluye en firebase init?

Dios te bendiga Evanb2! :)

¿Fue útil esta página
0 / 5 - 0 calificaciones