ChildAdded обратного вызова внутри метода, называется, ну, каждый раз, когда ребенок добавил (AKA несколько раз):Подключение повторяющегося обратного вызова к обещанию цепи
listenToBuildRequests({
childAdded: (value, key) => {
console.log('value, key -> ', value, key);
}
});
Есть прочь, с ES6 или 3 чтобы связать его с цепочкой обещаний?
childAdded()
.then(...
Я знаю, что это не стандарт, и я знаю, что обещает запустить один раз через и это потребует генерации нового обещания каждый раз. Однако работа с Firebase и обещает это сэкономит мне необходимость повторно начинать обещание цепи внутри обратного вызова:
listenToBuildRequests({
childAdded: (value, key) => {
createBuildDirectory(appId).
then(...
}
});
Очень простой пример JSBin (без сцепления), не предполагая, повторить рисунок обещание, а играть с концепцией: http://jsbin.com/mekoza/edit?js,console
'createBuildDirectory' должен вернуть обещание, которое выполняет (или отклоняет) после завершения асинхронной операции. «Тогда (...» вы закодировали (один раз) все еще работает, потому что его вызвали по возвращенному обещанию. – traktor53
Нет, установка цепочки обещаний внутри слушателя - это именно то, что нужно сделать. Что было бы обещанием вне 'listToBuildRequests 'представляют? – Bergi