javascript - 然后在部署节点 js 函数时捕获错误
问题描述
我正在尝试从 Github 运行示例代码以将数据插入到 Fire Store 数据库中,但出现错误。
这是错误:
21:1 error Expected catch() or return promise/catch-or-return
21:35 error Each then() should return a value or throw promise/always-return a value or throw
这是我收到错误的代码:
// getting data
db.collection('cafes').get().then((snapshot) => { //----line 21
snapshot.docs.forEach(doc => {
renderCafe(doc);
})
});
解决方案
这些看起来像 lint 警告,而不是实际的 JS 错误,除非您在某些非标准环境中运行它。
第一个似乎告诉您您无法.catch()
处理 db 中的错误.get()
。这是个好建议。您必须处理错误。
第二个似乎是错误的。没有规定必须从 a 返回值.then()
。如果它是链的末端并且您已完成处理,则没有理由返回任何东西。您可以通过放一个return 0
after来消除第二个警告renderCafe(doc)
,尽管我个人要么停止使用提供如此糟糕建议的工具,要么将其配置为不对这个问题发出警告,因为它是错误的,只是添加了虚拟的、非功能性的代码我不建议让一些工具开心。
推荐阅读
- excel - 使用常用模板发送邮件,地址在 Excel 中
- flutter - 我如何 TextField 始终显示光标
- javascript - 输入值必须等于数据库中的某个值
- c - 其中一个子进程无法从管道中读取
- c++ - 使用cmake的Linux终端上的“请求转换为非标量类型”错误
- javascript - 我将一个模板集成到我的 Angular 项目中,但在这两个文件中遇到了问题:core.min.js 和 script.js
- python - LFW 嵌套文件夹迭代
- flutter - Flutter - 如何在 vscode 中过滤调试控制台
- linux - 如何在 linux 中执行 cron 服务?
- parameters - Power BI 报表服务器分页报表问题