Discord Bot в Node.js с Javascript - как получить всех пользователей из гильдии или канала? - PullRequest
0 голосов
/ 25 марта 2020

Я пытаюсь все, но я не могу найти простую функцию, чтобы получить всех пользователей. Есть много коллекций и обещаний (UserManager et c) ...

Спасибо.

const Discord = require('discord.js');
const bot = new Discord.Client();

var users = [];

bot.on('ready', function(){
  console.log("connected");
});

bot.on('message', function(message){

  if (message.content == "!b"){
    var members = message.guild.members;
    members.fetch().then((data) => {
      //console.log(data);
      // THIS WORKS
      for (var u in data){
          console.log(u);
          // THAT DOESNT WORK !!! IT DISPLAYS NOTHING.
          // I WANT TO ADD USERS OBJECT IN MY USERS ARRAY
      }
    });

  }//b
});//message

bot.login('mytoken');
```

1 Ответ

4 голосов
/ 25 марта 2020

Вы можете сделать это, используя следующий фрагмент

const Discord = require("discord.js");
const bot = new Discord.Client();

var users = [];

bot.on("ready", function() {
  console.log("connected");
});

bot.on("message", function(message) {
  if (message.content == "!b") {
    var members = message.guild.members;
    members.fetch().then(data => {
      //   console.log(data);
      // THIS WORKS
      data.forEach(member => {
        users.push(member);
        console.log(`Added ${member.displayName} to users`);
      });
    });
  } //b
}); //message
...