node.js - 尝试部署 Firebase 函数时出现语法解析错误教程
问题描述
我正在关注Cloud Functions 教程,以了解如何使用 Firebase Functions。在我需要部署到云的阶段之前,一切都很顺利——由于某种原因,我遇到了语法异常!似乎异常是由 lambda 函数引起的:
$ firebase deploy --only 功能 === 部署到 'my-project-87547'... 我部署功能 运行命令:npm --prefix "$RESOURCE_DIR" run lint > 函数@ lint E:\Users\Emmet\Documents\firebase_tutorial\functions > 埃斯林特。 E:\Users\Emmet\Documents\firebase_tutorial\functions\index.js 10:65 错误解析错误:意外的令牌 => ✖ 1 个问题(1 个错误,0 个警告) npm 错误!代码生命周期 npm 错误!错误号 1 npm 错误!函数@ lint:`eslint .` npm 错误!退出状态 1 npm 错误! npm 错误!functions@lint 脚本失败。 npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误!C:\Users\Emmet\AppData\Roaming\npm-cache\_logs\2021-03-31T16_31_27_784Z-debug.log 事件.js:292 投掷者;// 未处理的“错误”事件 ^ 错误:spawn npm --prefix "%RESOURCE_DIR%" run lint ENOENT 在 notFoundError (C:\Users\Emmet\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:6:26) 在 verifyENOENT (C:\Users\Emmet\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:40:16) 在 ChildProcess.cp.emit (C:\Users\Emmet\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:27:25) 在 Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) 在 ChildProcess 实例上发出“错误”事件: 在 ChildProcess.cp.emit (C:\Users\Emmet\AppData\Roaming\npm\node_modules\firebase-tools\node_modules\cross-env\node_modules\cross-spawn\lib\enoent.js:30:37) 在 Process.ChildProcess._handle.onexit (internal/child_process.js:277:12) { 代码:'ENOENT', 错误号:'ENOENT', 系统调用:'spawn npm --prefix "%RESOURCE_DIR%" run lint', 路径:'npm --prefix "%RESOURCE_DIR%" 运行 lint', 生成参数:[] } 错误:函数预部署错误:命令以非零退出代码终止1
真正奇怪的是,我正在逐字使用教程本身提供的 index.js,并且它在 Firebase Local Emulator Suite 中按预期成功通过。
作为参考,我从 Windows 10 PC 的 Git Bash 终端(使用管理员)运行我的所有命令。我的 npm 版本是 6.14.11,我的 NodeJS 版本是 v14.16.0。
我知道其他人也遇到过类似的问题,但我还没有看到有人通过教程脚本本身得到它。提前致谢!
解决方案
我有过类似的经历。最终对我有用的是更改
"lint": "eslint .",
为"lint": "eslint",
Inside package.json
。
我怀疑这是由于在 Windows 机器上运行项目所致。
推荐阅读
- asp.net - asp.net httpClient发送json不起作用
- flask - AWS Lambda 未收到 Content-Type
- javascript - 做出反应。如何设置占位符,直到完全加载组件列表?
- php - 我可以使用 printenv 在服务器上看到 env 变量,但无法在 php 中获取它们
- django - Django 在所有实例上触发一些代码
- sql-server - 用户非活动报告。列出上个月不活动的所有用户。SQL 服务器
- wordpress - 找不到背景图片(.pagespeed 扩展名)
- jquery - jQuery 将选定值从一种形式应用到另一种形式
- webpack - 如何正确使用 webpack 的 ReplaceSource 优化部分模块?
- erlang - Erlang 匹配整数然后字符串