我不能启动我的机器人,它说SyntaxError:Identifier'嵌入'已声明



这是代码,im使用replit discord.js

const config = require('./config');
const commands = require('./help');
let bot = new Client({
fetchAllMembers: true, // Remove this if the bot is in large guilds.
presence: {
status: 'online',
activity: {
name: `${config.prefix} help`,
type: 'LISTENING'
}
}
});
bot.on('ready', () => console.log(`Logged in as ${bot.user.tag}.`));
bot.on('message', async message => {
// Check for command
if (message.content.startsWith(config.prefix)) {
let args = message.content.slice(config.prefix.length).split(' ');
let command = args.shift().toLowerCase();
switch (command) {
case 'avatar':
const Discord = require("discord.js");
let user = message.mentions.users.first() || message.author;
let avatar = user.displayAvatarURL({size: 4096, dynamic: true});
let embed = new Discord.MessageEmbed()
.setTitle(`Avatar de ${user.tag}` )
.setURL(avatar)
.setImage(avatar)
.setColor('RANDOM')
.setDescription('Ton avatar :')
message.channel.send(embed)
case 'ping':
let msg = await message.reply('Pinging...');
await msg.edit(`PONG! Message round-trip took ${Date.now() - msg.createdTimestamp}ms.`)
break;
case 'repeat':
if (args.length > 0)
message.channel.send(args.join(' '));
else
message.reply('You did not send a message to repeat, please try again.')
break
/* Unless you know what you're doing, don't change this command. */
case 'help':
let embed =  new MessageEmbed()
.setTitle('Help Menu')
.setColor('BLUE')
.setFooter(`Requested by: ${message.member ? message.member.displayName : message.author.username}`, message.author.displayAvatarURL())
.setThumbnail(bot.user.displayAvatarURL());
//29 more...

当我试图启动机器人时,它说:"SyntaxError:已声明标识符"embed"然后它崩溃了,我也试图将嵌入到embed1,但它破坏了代码请有人帮我接通

变量embed在同一范围内声明两次。你有两个选择:

选项1。switch语句之前声明一次。请记住,开关的所有情况都在同一范围内。

let embed;
switch (command) {
case 1:
embed = new Embed();
embed.doSomething();
break;
case 2:
embed = new AnotherEmbed();
break;
}

选项2.为每个case语句创建一个新的作用域,用大括号代替它们,然后在每个作用域上独立声明该变量:

switch (command) {
case 1: {
const embed = new Embed();
embed.doSomething();
break;
}
case 2: {
const embed = new AnotherEmbed();
break;
}
}

最新更新