TypeError: Невозможно прочитать свойство 'set' из неопределенного - PullRequest
0 голосов
/ 27 апреля 2020

Я создаю диссон-бота, используя диск . js v12.2.0 . В моем файле Команда. js, у меня есть этот код:

const { readdirSync } = require("fs")

module.exports = (Bot) => {
    const load = dirs => {
        const Commands = readdirSync(`./SRC/Commands/${dirs}/`).filter(d => d.endsWith('.js'));
        for (let file of Commands) {
            let pull = require(`../Commands/${dirs}/${file}`);
            Bot.Commands.set(pull.config.name, pull);
            if (pull.config.aliases) pull.config.aliases.forEach(a => Bot.aliases.set(a, pull.config.name));
          };
        };
        ["Miscellaneous", "Moderation", "Owner"].forEach(x => load(x));
};

Это мой Индекс. js Файл:

const { Client, Collection } = require("discord.js");
const { Token } = require("./Config.json");
const Bot = new Client();

["aliases", "commands"].forEach(x => Bot[x] = new Collection());
["console", "command", "event"].forEach(x => require(`./SRC/Handlers/${x}`)(Bot));

Bot.login(Token);

Ошибка выполнения этого кода: TypeError: Невозможно прочитать свойство 'set' из неопределенного

Это моя Структура проекта

1 Ответ

0 голосов
/ 27 апреля 2020

Вы инициализировали Bot.Commands индексом Discord.Collection()?

. js или любым другим основным файлом

const Discord = require("discord.js");
const Bot = new Discord.Client();
Bot.Commands = new Discord.Collection();

//or
const { Client, Collection } = require("discord.js");
const Bot = new Client();
Bot.Commands = new Collection();

Я бы посоветовал вам сделать бот и команды строчными, так как соглашение в js, и помогает другим понять лучше.

...