typeerror:functions.firestore.document不是firebase cloud函数

问题描述 投票:0回答:2

我有一段时间没有更改我的firebase功能,昨天我想创建一个新的firebase函数并将其添加到我所有功能的顶部,所以这是我的第一行:

const functions = require('firebase-functions');
const admin = require('firebase-admin');
const uuid = require('uuid');

admin.initializeApp();
const db = admin.firestore();
const storage = admin.storage().bucket();
const app = express();
app.use(cors({ origin: true }));

exports.runPredictionOnUpload = functions.firestore
.document('Project/{projectID}/models/{modelID}/predictions/{docId}')
.onCreate(async (snap, context) => {
const { projectID, modelID, docId } = context.params;
const document = snap.data();

if (!document || !document.data) {
  console.error('Missing data field in the document.');
  await admin.firestore().collection('Project').doc(projectID).collection('models').doc(modelID).collection('predictions').doc(docId).update({
    status: 'error',
    error: 'Data field is missing',
  });
  return;
}

}

功能尚未完成。但是,如果我现在运行firebase部署 - 仅功能,我会收到以下错误:

typeerror:functions.firestore.document不是函数

问题是我的下一个云功能(我几个月没有更改并且始终使用工作)也从functions.firestore.document开始“旧”功能。因此,现在我无法再推出更新或添加新功能。有人知道怎么了吗?

javascript firebase google-cloud-firestore google-cloud-functions
2个回答
1
投票
看起来您在不更新代码的情况下升级了firebase-funntrions依赖性。 您的功能是用旧的

1st代API编写的,但是最新的Firebase功能使用了新的2nd-genAPI。 您可能应该开始将代码迁移到新的API。 要么是,要么继续使用旧版本的firebase功能而不会升级它。 Just更改:


0
投票

TO:

const functions = require('Firebase-functions/v1');

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.