首页 > 解决方案 > 我无法弄清楚为什么它不起作用

问题描述

我的禁令命令不起作用。有人可以帮助我吗?这对我来说非常重要。这是我的第一个机器人,我希望它非常好。

代码:

module.exports = {
name: "ban", 
aliases: ["banuser"], 
execute(client, message, args) { 
if (message.member.hasPermission("BAN_MEMBERS")) let User = message.guild.member(message.mentions.users.first()) || message.guild.members.get(args[0]) 
if (!User) return message.channel.send("Meg kell nevezned egy szemelyt!") 
if (User.hasPermission("BAN_MEMBERS")) return message.reply("Nem tudtam kitiltani a felhasznalat") 
let banReason = args.join(" ").slice(22);
if (!banReason) banReason = "None"
User.ban({reason: banReason}) 
}
}

错误:

C:\Users\marce\Discord Bot\commands\ban.js:6 
     let User = message.guild.member(message.mentions.users.first()) || message.guild.members.get(args[0])
     ^^^

 SyntaxError: Lexical declaration cannot appear in a single-statement context

标签: discorddiscord.js

解决方案


if您需要在函数之前声明变量。例如:

if (1+1===2) let test = 1 // this will return an error

let test;
if (1+1===2) test = 1 // this will not return an error

在你的情况下,你需要改变

if (message.member.hasPermission('BAN_MEMBER') let User = // ...

let User;
if (message.member.hasPermission('BAN_MEMBER') User = // ...

推荐阅读