Я хочу запустить две нижеприведенные функции JS Firebase синхронно, так как для выполнения операции мне нужны значения из обоих из них в последнем блоке if
. У меня есть console.log(1), (2) and (3)
, чтобы увидеть, работают ли они синхронно, но это не так. Я попробовал .then()
на первом блоке, но это не сработало. Может кто-нибудь помочь здесь? Я предполагаю, что promise
может работать здесь, но я не знаю, как это реализовать: (
let intUsersRef = db.ref('users/' + this.user_id + '/interested_in');
let waitUsersRef = db.ref('users/' + this.user_id + '/waitlist_in');
//block 1
intUsersRef.orderByChild('project_id')
.equalTo(id).on('value', function(snapshot){
console.log(1);
if(snapshot.val() == null){
//project not in interested node
userInterested = false;
}else{
userInterested = true;
}
});
//block 2
waitUsersRef.orderByChild('project_id')
.equalTo(id).on('value', function(snapshot){
console.log(2);
if(snapshot.val() == null){
//project not in waitlist node
userWaitlisted = false;
}else{
userWaitlisted = true;
}
});
//block 3
if(userInterested == true || userWaitlisted == true){
console.log(3);
//do something...
}```