node.js - 每个 then() 应该返回一个值或抛出,promise/always-return

标签 node.js firebase google-cloud-functions

我正在尝试使用 node.js 部署一个简单的 firebase 云函数来读取集合,但是在部署它时出现此错误:

每个 then() 应该返回一个值或抛出 promise/always-return

代码如下

const admin = require('firebase-admin');
const functions = require('firebase-functions');
admin.initializeApp(functions.config().firebase);

let db = admin.firestore();

db.collection('collection').get().then((snapshot) => {
  snapshot.forEach((doc) => {
    return console.log(doc.id, '=>', doc.data());
  });
})
.catch((err) => {
  console.log('Error getting documents', err);
});

我尝试添加返回,但仍然出现错误。

return console.log(doc.id, '=>', doc.data());

return console.log('获取文档出错', err);

最佳答案

你在一个函数内部返回:)它不算数,你必须在这里添加它:

db.collection('collection').get().then((snapshot) => {
  return snapshot.forEach((doc) => {
    return console.log(doc.id, '=>', doc.data());
  });
})
.catch((err) => {
  console.log('Error getting documents', err);
});

关于node.js - 每个 then() 应该返回一个值或抛出,promise/always-return,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59180596/

相关文章:

firebase - 无崩溃统计监视器在 Flutter 中的 Firebase Crashlytics 中不起作用

node.js - Google App Engine 柔性环境上的多个 NodeJS 服务/模块

typescript - 在 firebase 云函数中使用 typescript 的 firebase-admin

javascript - Sails.js index.ejs Controller 逻辑

javascript - 使用 Loopback 实现更改密码

javascript - 在这种特殊情况下,$and 和 $all 之间有什么区别?

javascript - Firebase 身份验证错误身份验证/网络请求失败

firebase - 由于Cloud Build API,Firebase Cloud Functions是否要求在2020年4月20日之前启用计费功能?

firebase - 在 firebase 云功能中获取用户电话号码

node.js - 如何在 node.js 中创建非阻塞异步函数?