Я недавно обновил новые облачные функции в соответствии с документацией здесь .
Я сделал все обновления в коде, который ранее отвечал моему методу .onCreate()
.Однако теперь, когда я вызываю firebase deploy --only functions
, мой терминал в Android Studio просто зависает, и я проверяю журналы в моей консоли Firebase, чтобы увидеть, что ничего не было выполнено.
Ниже приведен связанный код, node.js иJavaScript:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
exports.trackVote =
functions.firestore.document('Polls/{pollId}/responses/{userId}')
.onCreate(change, context => {
const data = change.after.data();
const answerSelected = data.answer;
const answerRef = admin.firestore().doc(`Polls/${event.params.pollId}/answers/${answerSelected}`);
const voteCountRef = admin.firestore.doc(`Polls/${event.params.pollId}/vote_count`);
return admin.firestore().runTransaction(t => {
return t.get(answerRef)
.then(doc => {
if (doc.data()) {
t.update(answerRef, { vote_count: doc.data().vote_count + 1 });
}
}
};
//do not add to Git
return admin.firestore().runTransaction(t => {
return t.get(voteCountRef)
.then(doc =>){
if (doc.data()){
t.update(voteCountRef, {vote_count:doc.data().vote_count+1});
}
}
};
});
РЕДАКТИРОВАТЬ: наконец-то произошла ошибка:
SyntaxError: missing ) after argument list
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:607:28)
at Object.Module._extensions..js (module.js:654:10)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)
at Function.Module._load (module.js:491:3)
at Module.require (module.js:587:17)
at require (internal/module.js:11:18)
at /usr/local/lib/node_modules/firebase-tools/lib/triggerParser.js:18:11