Получение идентификаторов пользователей через их имя пользователя. Раздор. JS - PullRequest
0 голосов
/ 19 июня 2020
     client.on("message", async message =>{
      message.guild.members.fetch({query: "username here", limit: 1})
       .then( members => console.log(members.user.id)) //results in undefined
       .catch(console.error);
      }

Я хотел бы иметь возможность получать идентификатор пользователя через его имя пользователя. В этом случае я использую метод "fetch ()" и запрос внутри него. Однако, когда я пытаюсь войти в систему (members.user.id), я получаю «undefined». Дело в том, что всякий раз, когда я получаю данные по идентификатору пользователя (см. Код ниже), я могу получить доступ к идентификатору пользователя, имени пользователя и т. Д. c .. Как мне получить данные по их имени пользователя, а затем получить идентификатор пользователя . Я использовал это в качестве ориентира https://discord.js.org/# / docs / main / master / class / GuildMemberManager? ScrollTo = fetch

Если у них есть более простой способ получить идентификатор пользователя по его имени пользователя скажите пожалуйста.

     client.on("message", async message =>{
       message.guild.members.fetch("userID here")
       .then( members => console.log(members.user.username))// a username is logged
       .catch(console.error);
             }

1 Ответ

1 голос
/ 19 июня 2020

Похоже, что даже если лимит равен 1, он все равно вернет коллекцию, поэтому вам нужно будет получить первого члена этой коллекции

message.guild.members.fetch({query: "username here", limit: 1})
   .then(members => {
      const member = members.first();
      //no need to convert it into a user 
      console.log(member.id);
   });
...