首页 > 解决方案 > Discord javascript bot 创建错误“未定义消息”

问题描述

脚本如下:


client.login(config.token);

var commandsList = fs.readFileSync('D:/DiscordBot/commands.txt', 'utf8');

   if(message === (command = 'help')) {
    message.channel.send(commandList);
    message.delete().catch(O_o=>{});
} 

错误日志如下所示:

    at Object.<anonymous> (D:\DiscordBot\index.js:147:4)
[90m    at Module._compile (internal/modules/cjs/loader.js:1185:30)[39m
[90m    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1205:10)[39m
[90m    at Module.load (internal/modules/cjs/loader.js:1034:32)[39m
[90m    at Function.Module._load (internal/modules/cjs/loader.js:923:14)[39m
[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)[39m
[90m    at internal/main/run_main_module.js:17:47[39m

我无法解决这个问题,请帮助!

标签: javascriptnode.js

解决方案


这篇文章假设你正在运行 discord.js

这应该是一个快速修复。确保它command已定义,并且您使用==or===来检查相等性,而不是赋值运算符 ( =)。

另外,请确保每次发送消息时都进行更新!

你可能想做这样的事情:

const commandList = fs.readFileSync('D:/DiscordBot/commands.txt', 'utf8');

client.on("message", message => {
    if(message.content.startsWith("help")) {
        // do whatever with message
    }
});

推荐阅读