Перезагрузите команду discord.js - PullRequest
0 голосов
/ 05 июня 2018

Я создаю диск-бот с помощью discord.js, но моя команда сброса не работает.

       //!reload
       if(command === `${botsettings.prefix}reload`) {
            console.clear();
               bot.destroy()
               bot.login(botsettings.token);
             message.channel.send("Reloaded");
         return;
        }

Не выдает никакой ошибки;он перезапускается и снова включается, но команды не обновляются!

Я пробовал так много разных вещей, которые нашел, но это не работает.

У меня только один файл для всех команд.

Ответы [ 3 ]

0 голосов
/ 27 сентября 2018

Если вы используете систему nodemon и локальный пакетный файл, он автоматически перезагрузит файл для каждого сохраненного в нем изменения и выведет новые изменения файла.Если вам нужна дополнительная помощь по этому вопросу, посмотрите несколько видеороликов из TheSourceCode на YouTube, и вы увидите примерно 3-4 эпизода о нем с помощью nodemon.Если вы в конечном итоге разместите его на Heroku, который не одобряется, но я так и сделаю, он будет автоматически перезагружаться при каждом изменении в вашем репозитории GitHub, просто обязательно замените ваш токен на process.env.token иубедитесь, что он установлен на вашем Heroku, YouTube - ваш друг.

0 голосов
/ 10 ноября 2018

В предоставленном вами коде кажется, что вы единственное обновление const 'bot' вместо перезагрузки файла bot.js.

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

0 голосов
/ 11 июня 2018

Итак, я предполагаю, что у вас установлены различные файлы (конфигурации и т. Д.) И один центральный файл bot.js, и вы загружаете бота, используя что-то вроде

node bot.js

на вашем хост-компьютере, иочевидно, что часть вашего файла .js настраивает бота примерно так:

const bot = new Discord.Client();

Из того, что я могу сказать, ваши

bot.destroy()

и

bot.login(botsettings.token);

просто обновляет const 'bot', но он не перезагружает файл bot.js (с обновленными командами и кодом).

Что вам нужно сделать, это настроить его назапустите пакетный файл или что-то на вашем хост-компьютере, которое завершит весь процесс bot.js, а затем перезапустит его.Поскольку при этом будет использоваться новый и обновленный файл bot.js.

Единственная проблема заключается в том, что я все еще выясняю, как запустить командный файл из моего JS-файла, что, как понятно, для обеспечения безопасности, эта функция не встроена.в (в других случаях большинство веб-сайтов, использующих JS, были бы уязвимы, чтобы заставить его запускать такие вещи, как формат C: \)

Я предполагаю, что это будет включать использование WSH в моем JS, и я обновлю здесь, если получуэто происходит.

Надеюсь, это было ясно?дайте мне знать, если у вас все еще есть вопрос:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...