如何重置 discord.js 中的嵌入数据?
How do I reset Embed data in discord.js?
我正在使用 const embed = new Discord.RichEmbed();
对于我的嵌入。如何重置嵌入值?
在我 运行 一个设置嵌入元素的命令之后,它会转到下一个命令。我怎样才能做到这一点,这样价值观就不会延续下去,我就不会得到这个结果?
myavatar 和 avatar 命令的代码。
client.on('message', message => {
const authorID = message.author.id;
const authorAvatarLink = message.author.avatarURL;
if (message.content.toLowerCase() === commandPrefix + 'myavatar') {
embed.setAuthor(message.author.username, message.author.avatarURL);
embed.setDescription(authorAvatarLink);
embed.setImage(authorAvatarLink);
message.channel.send(embed);
}
if (message.content.toLowerCase().startsWith(commandPrefix + 'avatar')) {
var user = message.mentions.users.first();
var msgContent = message.content.substr(7, (message.content.length));
if (user != null) {
embed.setAuthor(user.username, user.avatarURL);
embed.setDescription(user.avatarURL);
embed.setImage(user.avatarURL);
embed.setFooter('Requested by ' + message.author.tag);
message.channel.send(userMention(authorID), embed);
} else {
var errorCmd = (commandPrefix + 'avatar');
commandError(message, userMention(authorID), errorCmd, msgContent);
}
user = undefined;
delete(user);
embed.setImage(null);
}
});
我的 membercount 命令代码。
client.on('message', message => {
if (message.content.toLowerCase() === commandPrefix + 'membercount') {
var memberCount = message.guild.memberCount;
embed.setColor(nvdMainColor);
embed.setAuthor(message.author.username, message.author.avatarURL);
embed.setTimestamp(new Date());
embed.addField('Total Members', memberCount);
message.channel.send(embed);
}
});
我该怎么做才能防止这些值转移到其他命令中?
希望我能很好地理解您的问题。只需在不同的变量中定义不同的RichEmbeds即可。
我定义了 embed1
和 embed2
。 embed1
用于 myavatar 命令,embed2
用于 avatar 命令,因此这 2 个 RichEmbeds 是具有不同值的 2 个不同的嵌入。
这是您如何为您的头像和 myavatar 命令执行此操作的代码:
const Discord = require('discord.js');
client.on('message', message => {
const authorID = message.author.id;
const authorAvatarLink = message.author.avatarURL;
const embed1 = new Discord.RichEmbed()
const embed2 = new Discord.RichEmbed()
if (message.content.toLowerCase() === commandPrefix + 'myavatar') {
embed1.setAuthor(message.author.username, message.author.avatarURL);
embed1.setDescription(authorAvatarLink);
embed1.setImage(authorAvatarLink);
message.channel.send({embed : embed1});
}
if (message.content.toLowerCase().startsWith(commandPrefix + 'avatar')) {
var user = message.mentions.users.first();
var msgContent = message.content.substr(7, (message.content.length));
if (user != null) {
embed2.setAuthor(user.username, user.avatarURL);
embed2.setDescription(user.avatarURL);
embed2.setImage(user.avatarURL);
embed2.setFooter('Requested by ' + message.author.tag);
message.reply({ embed: embed2 });
} else {
var errorCmd = (commandPrefix + 'avatar');
commandError(message, userMention(authorID), errorCmd, msgContent);
}
user = undefined;
delete(user);
embed2.setImage(null);
}
});
我正在使用 const embed = new Discord.RichEmbed();
对于我的嵌入。如何重置嵌入值?
在我 运行 一个设置嵌入元素的命令之后,它会转到下一个命令。我怎样才能做到这一点,这样价值观就不会延续下去,我就不会得到这个结果?
myavatar 和 avatar 命令的代码。
client.on('message', message => {
const authorID = message.author.id;
const authorAvatarLink = message.author.avatarURL;
if (message.content.toLowerCase() === commandPrefix + 'myavatar') {
embed.setAuthor(message.author.username, message.author.avatarURL);
embed.setDescription(authorAvatarLink);
embed.setImage(authorAvatarLink);
message.channel.send(embed);
}
if (message.content.toLowerCase().startsWith(commandPrefix + 'avatar')) {
var user = message.mentions.users.first();
var msgContent = message.content.substr(7, (message.content.length));
if (user != null) {
embed.setAuthor(user.username, user.avatarURL);
embed.setDescription(user.avatarURL);
embed.setImage(user.avatarURL);
embed.setFooter('Requested by ' + message.author.tag);
message.channel.send(userMention(authorID), embed);
} else {
var errorCmd = (commandPrefix + 'avatar');
commandError(message, userMention(authorID), errorCmd, msgContent);
}
user = undefined;
delete(user);
embed.setImage(null);
}
});
我的 membercount 命令代码。
client.on('message', message => {
if (message.content.toLowerCase() === commandPrefix + 'membercount') {
var memberCount = message.guild.memberCount;
embed.setColor(nvdMainColor);
embed.setAuthor(message.author.username, message.author.avatarURL);
embed.setTimestamp(new Date());
embed.addField('Total Members', memberCount);
message.channel.send(embed);
}
});
我该怎么做才能防止这些值转移到其他命令中?
希望我能很好地理解您的问题。只需在不同的变量中定义不同的RichEmbeds即可。
我定义了 embed1
和 embed2
。 embed1
用于 myavatar 命令,embed2
用于 avatar 命令,因此这 2 个 RichEmbeds 是具有不同值的 2 个不同的嵌入。
这是您如何为您的头像和 myavatar 命令执行此操作的代码:
const Discord = require('discord.js');
client.on('message', message => {
const authorID = message.author.id;
const authorAvatarLink = message.author.avatarURL;
const embed1 = new Discord.RichEmbed()
const embed2 = new Discord.RichEmbed()
if (message.content.toLowerCase() === commandPrefix + 'myavatar') {
embed1.setAuthor(message.author.username, message.author.avatarURL);
embed1.setDescription(authorAvatarLink);
embed1.setImage(authorAvatarLink);
message.channel.send({embed : embed1});
}
if (message.content.toLowerCase().startsWith(commandPrefix + 'avatar')) {
var user = message.mentions.users.first();
var msgContent = message.content.substr(7, (message.content.length));
if (user != null) {
embed2.setAuthor(user.username, user.avatarURL);
embed2.setDescription(user.avatarURL);
embed2.setImage(user.avatarURL);
embed2.setFooter('Requested by ' + message.author.tag);
message.reply({ embed: embed2 });
} else {
var errorCmd = (commandPrefix + 'avatar');
commandError(message, userMention(authorID), errorCmd, msgContent);
}
user = undefined;
delete(user);
embed2.setImage(null);
}
});