Как я могу заставить свою функцию БД отправлять информацию обратно?

#javascript #function #google-cloud-firestore #discord.js #eris

#javascript #функция #google-облако-firestore #discord.js #eris

Вопрос:

Я пытаюсь упростить доступ к своей базе данных при написании кода.

Это функция (расположенная в главном файле бота):

 function getDB(area,argument){
  db.collection(area).doc(argument).get().then((q) => {
    
  })
}
  

Вот как я это называю:
getDB('economy',msg.author.id)

Когда вы console.log() получаете базу данных, она ничего не возвращает, но когда вы console.log() q.data() в основной функции печатает полную строку из базы данных.

Фрагмент Console.log()

Как я могу заставить ее возвращать информацию базы данных?

Ответ №1:

В вашей функции вы не указали, что вы хотите сделать с данной информацией. По вашему коду, возможно, добавьте оператор возврата

 function getDB(area,argument){
  db.collection(area).doc(argument).get().then((q) => return q; )
}
  

Таким образом, вы можете легко использовать базу данных. вот несколько примеров

 if(getDB(balance,message.author.id)) return;
//
message.channel.send(`
${getDB(xp, message.author.id) > 200 ? 'You do not have required xp' : 'You do'}
`)
  

Комментарии:

1. Все еще показывая, что это не определено, попробовал пример отправки сообщения, и это выдает ошибку.

2. возможно, это лексическое объявление. Нравится mesage и нет message , или, может быть, база данных возвращает undefined, когда база данных пользователя пуста, или вам не требуется модуль idk -v- проверьте один из этих трех