Когда вы говорите setInterval(resolve(snap), time)
, вы вызываете метод разрешения до , когда запускается таймер. Тогда ничего не происходит после срабатывания таймера, потому что resolve(snap)
ничего не возвращает - нет функции для выполнения. Почему бы вам не попробовать нечто подобное вместо этого, чтобы фактически отложить выполнение resolve()
до срабатывания таймера:
exports.monitorActiveSignals = functions.database.ref('/names/{pushId}')
.onCreate((snapshot, context) => {
const key = snapshot.key;
console.log(key);
return wait(5000, snapshot).then((snap) => {
console.log("timer done")
snapshot.ref.remove();
return;
})
})
const wait = (time, snap) => new Promise((resolve) => {
console.log(time)
console.log("timer started");
setTimeout(resolve, time);
});