[英]Discord.js - TypeError: Cannot read properties of undefined (reading 'set')
[英]TypeError: Cannot read properties of undefined (reading 'set') Discord.js
我正在制作 Discord 機器人,但出現錯誤,我找不到解決方案。 我希望有人能找到它:這是代碼:
事件處理程序
async function loadEvents(client) {
const { loadFiles } = require("../Functions/fileLoader");
const ascii = require("ascii-table");
const table = new ascii().setHeading("Event", "Status");
await client.events.clear();
const Files = await loadFiles("Events");
Files.forEach((file) => {
const event = require(file);
const execute = (...args) => event.execute(...args, client);
client.event.set(event.name, execute);
if (event.rest) {
if (event.once) client.rest.once(event.name, execute);
else client.rest.on(event.name, execute);
} else {
if (event.once) client.once(event.name, execute);
else client.on(event.name, execute);
}
table.addRow(event.name, "🟩");
});
return console.log(table.toString(), "\nLoaded Events.");
}
module.exports = { loadEvents };
文件加載器
const { glob } = require("glob");
const { promisify } = require("util");
const proGlob = promisify(glob);
async function loadFiles(dirName) {
const Files = await proGlob(
`${process.cwd().replace(/\\/g, "/")}/${dirName}/**/*.js`
);
Files.forEach((file) => delete require.cache[require.resolve(file)]);
return Files;
}
module.exports = { loadFiles };
任何人都可以找到錯誤嗎?
文檔中的快速搜索顯示, client.event
不是有效屬性,因此您嘗試在未定義的內容上調用set
function (在您的情況下為client.event
。
但是你想用這條線實現什么?
client.event.set(event.name, execute);
錯字問題。 你的常數是 client:events: await client.events.clear()
但是您為 client.event 設置: client.event.set(event.name, execute);
您必須使用 client.event 或 client.events 並且必須在 index.js 中聲明client.event(s) = new Collection();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.