I understand at first glance this may look like a duplicate but I have seen all the answers for that tell me to put a return in but that is not working.
this is my function:
function removePastUsersFromArray(){
pullAllUsersFromDB().then(function(users_array){
var cookie_value = document.cookie.split('=') [1];
const promises = []
for (var i = 0; i < _USERS.length; i++) {
if (_USERS[i].useruid == cookie_value){
var logged_in_user = _USERS[i].useruid;
promises.push(
onChildValue(rootRef, 'users/' + logged_in_user + '/disliked_users/').then(formatUsers)
)
promises.push(
onChildValue(rootRef, 'users/' + logged_in_user + '/liked_users/').then(formatUsers)
)
}
}
return Promise.all(promises);
})
};
and I get the error at this function:
function displayRemovedPastUsersFromArray(){
removePastUsersFromArray().then(function(promises){
basically saying that my removePastUsersFromArray
is undefined. but it isn't as it clearly exists above and returns promises??
basically saying that my
removePastUsersFromArray
is undefined
No, it says that the removePastUsersFromArray()
call returned undefined
, as that's what you're trying to call then
upon.
it clearly exists above and returns promises?
It exists, yes, but it doesn't return anything. The return
you have is inside the then
callback, but the function itself does not have a return
statement. return
the promise that results from the chaining:
function removePastUsersFromArray() {
return pullAllUsersFromDB().then(function(users_array) {
//^^^^^^
var cookie_value = document.cookie.split('=') [1];
const promises = []
for (var i = 0; i < _USERS.length; i++) {
if (_USERS[i].useruid == cookie_value){
var logged_in_user = _USERS[i].useruid;
promises.push(
onChildValue(rootRef, 'users/' + logged_in_user + '/disliked_users/').then(formatUsers)
);
promises.push(
onChildValue(rootRef, 'users/' + logged_in_user + '/liked_users/').then(formatUsers)
);
}
}
return Promise.all(promises);
})
};
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With