je suit fonction exemple de ce tutoriel: Asynchronous Programming (I Promise!) with Cloud Functions for Firebase - FirecastsFirebase Déploiement Erreur: Échec de la configuration de déclenchement
exports.emailEmployeeReport = functions.database
.ref('/employees/${eid}/reports/${rid}')
.onWrite(event => {
const eid = event.params.eid;
const report = event.data.val().report;
const root = event.data.ref.root;
const mgr_promise = root.child(`/employees/${eid}/manager`).once('value');
const then_promise = mgr_promise.then(snap => {
const mgr_id = snap.val();
const email_promise = root.child(`/employees/${mgr_id}/email`).once('value');
return email_promise;
}).catch(reason => {
// Handle the error
console.log(reason);
});;
const then_promise2 = then_promise.then(snap => {
const email = snap.val();
const emailReportPromise = sendReportEmail(email, report);
return emailReportPromise;
}).catch(reason => {
// Handle the error
console.log(reason);
});
return then_promise2;
});
var sendReportEmail = function (email, report) {
const myFirstPromise = new Promise((resolve, reject) => {
// do something asynchronous which eventually calls either:
//
setTimeout(function() {
try {
var someValue = "sendReportEmail";
console.log(someValue);
// fulfilled
resolve(someValue);
}
catch (ex) {
// rejected
reject(ex);
}
}, 2000);
});
return myFirstPromise;
}
une fois que je lance la commande firebase deploy
, finalement, je reçois l'erreur suivante:
functions[emailEmployeeReport]: Deploy Error: Failed to configure trigger providers/google.firebase.database/eventTypes/[email protected] (emailEmployeeReport)
J'ai aussi avoir une méthode simple bonjour-monde et une méthode de déclenchement similaire, et ils déploient bien.
Ai-je oublié quelque chose ici?
Il en va de la présentation erronée YouTube? S'il vous plaît voir https://youtu.be/NgZIb6Uwpjc?t=1m34s –
Oui, c'est faux, malheureusement. – laurenzlong
Cela a résolu le problème, merci! –