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

291
Vistas
Token inesperado => en asíncrono usando Firebase Functions (2022) predeterminado ESlint

Mi paquete.json

 { "name": "functions", "description": "Cloud Functions for Firebase", "scripts": { "lint": "eslint .", "serve": "firebase emulators:start --only functions", "shell": "firebase functions:shell", "start": "npm run shell", "deploy": "firebase deploy --only functions", "logs": "firebase functions:log" }, "engines": { "node": "16" }, "main": "index.js", "dependencies": { "axios": "^0.27.2", "firebase-admin": "^10.0.2", "firebase-functions": "^3.21.2" }, "devDependencies": { "eslint": "^8.9.0", "eslint-config-google": "^0.14.0", "firebase-functions-test": "^0.2.0" }, "private": true }

Mi .eslintrc.js

 module.exports = { root: true, env: { es6: true, node: true, }, extends: [ "eslint:recommended", "google", ], rules: { quotes: ["error", "double"], }, };

Una versión limpia de mi index.js

 const admin = require('firebase-admin') admin.initializeApp() exports.sendMessage = functions.https.onCall(async (input) => { // my code here })

Error de terminal

 error Parsing error: Unexpected token => ✖ 1 problem (1 error, 0 warnings) Error: functions predeploy error: Command terminated with non-zero exit code1

Estoy pensando que la versión de ESLint que se está aplicando puede estar desactualizada. Si es así, ¿cómo lo actualizo? ¿Necesito usar un paquete babel-eslint (o más nuevo)? ¿Debo aplicar las reglas ES7 u 8 en su lugar, y cómo?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Solo has habilitado es6: true . Sin embargo, las funciones async son parte de ES8 (ES2017). Querrás usar algo más moderno que ES6. Alternativamente, configure las opciones del analizador específicamente.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Actualicé mi archivo .eslintrc.js

 module.exports = { root: true, parserOptions: { ecmaVersion: "latest", }, env: { node: true, }, extends: [ "eslint:recommended", "google", ], rules: { quotes: ["error", "double"], }, };

De esta manera, es6 se eliminó como un valor verdadero en env y parserOptions se agregó con ecmaVersion configurado en la latest versión. Luego simplemente apliqué las reglas basadas en los elementos fallidos. Funciona, pero fue un poco complicado. Supongo que el código es más limpio al menos...

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