base de fuego: 3.18.4
nodo: 8.10.0
npm: 5.6.0
ventanas
firebase deploy --only functions
Las funciones de la nube de Firebase se implementarán correctamente.
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```
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! :)
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 detsc
desde dentro defunctions/package.json
. Esto le dice al compilador TypeScript que omita la verificación de tipo de todos los archivos de declaración.