Как я могу получить Discord. js Клиент в экземплярах Nuxt Vue - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь внедрить клиента из Discord. js в приложение nuxt, чтобы создать панель управления для моего бота. Поэтому я решил создать модуль, но когда я передаю данные клиента плагину, у меня всегда возникают проблемы со ссылками на цирк ... Вы можете мне помочь?

import path from 'path'
import Discord from 'discord.js'
import fs from 'fs'
import pkg from '../../package'

export default async function nuxtDiscord(moduleOptions) {
  const client = new Discord.Client();
  const options = Object.assign({}, this.options.discord, moduleOptions);

  client.version = pkg.version;

  console.info(`Starting Bot Version: ${client.version}`);
  console.info(`Node Version: ${process.version}`);
  console.info(`DiscordJS Version: ${Discord.version}`);

  client.on('ready', () => {

    this.addPlugin({
      src: path.resolve(__dirname, 'plugin.js'),
      fileName: 'nuxt-discord-plugin.js',
      options: {
       config: options.config,
       client: client
      }
    });

    client.user.setPresence({
      game: {
        name: `v${client.version}`
      }
    }).catch(console.error);
  });

  fs.readdir(path.resolve(__dirname, './events/'), ((err, files) => {
    if (err) return console.error(err);

    files.forEach(file => {
      const event = require(path.resolve(__dirname, './events', file));
      let eventName = file.split('.')[0];
      client.on(eventName, event.bind(null, client));
    });
  }));

  await client.login(options.config.token);
}
...