Javascript 我制造了一个不和谐的机器人,但我在故障排除方面遇到了麻烦。它给了我一些错误,但我不知道它们是什么意思
我正在设置一个discord机器人。这将是一个带有特定命令的通讯机器人。我的机器人现在无法打开,因为它给了我以下错误代码Javascript 我制造了一个不和谐的机器人,但我在故障排除方面遇到了麻烦。它给了我一些错误,但我不知道它们是什么意思,javascript,node.js,bots,discord,discord.js,Javascript,Node.js,Bots,Discord,Discord.js,我正在设置一个discord机器人。这将是一个带有特定命令的通讯机器人。我的机器人现在无法打开,因为它给了我以下错误代码 E:\FLRP Communication\package.js:20 bot.command.set(props.help.name, props); ^ TypeError: Cannot read property 'set' of undefined at jsfile.forEach (E:\FLRP Communicati
E:\FLRP Communication\package.js:20
bot.command.set(props.help.name, props);
^
TypeError: Cannot read property 'set' of undefined
at jsfile.forEach (E:\FLRP Communication\package.js:20:17)
at Array.forEach (<anonymous>)
at fs.readdir (E:\FLRP Communication\package.js:17:10)
at FSReqWrap.oncomplete (fs.js:141:20)
E:\FLRP Communication\package.js:20
bot.command.set(props.help.name,props);
^
TypeError:无法读取未定义的属性“set”
在jsfile.forEach(E:\FLRP Communication\package.js:20:17)
在Array.forEach()处
在fs.readdir(E:\FLRP Communication\package.js:17:10)
在FSReqWrap.oncomplete(fs.js:141:20)
我用的是教程视频,但我做的一切都和他一样。我不知道还能做什么
const Discord = require("discord.js");
const Config = require("./config.json");
const Token = require("./token.json");
const fs = require("fs");
const bot = new Discord.Client({disableEveryone: true});
bot.commands = new Discord.Collection();
fs.readdir("./commands/", (err, files) =>{
if(err) console.log(err);
let jsfile = files.filter(f => f.split(".").pop() === "js")
if(jsfile.length <= 0){
console.log("could not find command.");
return;
}
jsfile.forEach((f, i) =>{
let props = require(`./commands/${f}`);
console.log(`${f} loaded`);
bot.command.set(props.help.name, props);
});
});
bot.on("ready", async () =>{
console.log(`${bot.user.username} is online! Its running on
${bot.guilds.size} servers`);
bot.user.setActivity("Work in progress", {type: "PLAYING"});
});
bot.on("message", async message =>{
if(message.author.bot) return;
if(message.channel.type === "dm") return;
let prefix = Config.prefix;
let msgArray = message.content.split(" ");
let cmd = msgArray[0];
let args = msgArray.slice(1);
let cmdFile = bot.commands.get(cmd.slice(prefix.length));
if(cmdFile) cmdFile.run(bot, message, args);
});
bot.login(Token.token);
const Discord=require(“Discord.js”);
const Config=require(“./Config.json”);
const-Token=require(“./Token.json”);
常数fs=要求(“fs”);
const bot=new Discord.Client({disableEveryone:true});
bot.commands=new Discord.Collection();
fs.readdir(“./commands/”,(错误,文件)=>{
if(err)console.log(err);
让jsfile=files.filter(f=>f.split(“.”.pop()==“js”)
if(jsfile.length){
让props=require(`./commands/${f}`);
log(`${f}已加载`);
bot.command.set(props.help.name,props);
});
});
on(“就绪”,异步()=>{
console.log(`${bot.user.username}已联机!它正在运行
${bot.guilds.size}服务器`);
setActivity(“正在进行的工作,{type:“PLAYING”});
});
on(“消息”,异步消息=>{
if(message.author.bot)返回;
if(message.channel.type==“dm”)返回;
让prefix=Config.prefix;
让msgArray=message.content.split(“”);
设cmd=msgArray[0];
设args=msgArray.slice(1);
让cmdFile=bot.commands.get(cmd.slice(prefix.length));
if(cmdFile)cmdFile.run(bot、message、args);
});
bot.login(Token.Token);
我希望机器人能在第一时间启动(尽管它没有)。在此之后可能会出现更多错误,但此时仅显示1
提前感谢您正在使用上面的
bot.命令
,然后使用:
bot.command.set(props.help.name, props);
将其更改为:
bot.commands.set(props.help.name, props);