У меня есть функция облака, используемая для перекрестных ссылок на два списка и нахождения значений, которые соответствуют друг другу в списках. Кажется, что функция работает правильно, однако в журналах я вижу это Error serializing return value: TypeError: Converting circular structure to JSON
. Вот функция...
exports.crossReferenceContacts = functions.database.ref('/cross-ref-contacts/{userId}').onWrite(event => {
if (event.data.previous.exists()) {
return null;
}
const userContacts = event.data.val();
const completionRef = event.data.adminRef.root.child('completed-cross-ref').child(userId);
const removalRef = event.data.ref;
var contactsVerifiedOnDatabase ={};
var matchedContacts= {};
var verifiedNumsRef = event.data.adminRef.root.child('verified-phone-numbers');
return verifiedNumsRef.once('value', function(snapshot) {
contactsVerifiedOnDatabase = snapshot.val();
for (key in userContacts) {
//checks if a value for this key exists in `contactsVerifiedOnDatabase`
//if key dioes exist then add the key:value pair to matchedContacts
};
removalRef.set(null); //remove the data at the node that triggered this onWrite function
completionRef.set(matchedContacts); //write the new data to the completion-node
});
});
Я попытался поставить return
перед completionRef.set(matchedContacts);
, но это все еще дает мне ошибку. Не уверен, что я делаю неправильно и как избавиться от ошибки. Спасибо за вашу помощь.