如何解决如何使用discord.js嵌入
我想知道如何在discord.js
中编写嵌入内容。这是我当前的代码:它不起作用。我收到警告:message.channel.send
上的“消息未定义”,我不知道如何解决。我希望你们能告诉我如何解决此问题。
js
message.channel.send(generateEmbed(0)).then((message) => {
if (guilds.length <= 10) return;
message.react(":right_arrow:");
const collector = message.createReactionCollector(
(reaction,user) =>
[":left_arrow:",":right_arrow"].includes(reaction.emoji.name) &&
user.id === message.author.id,// time out after a minute
{ time: 60000 }
);
let currentIndex = 0;
collector.on("collect",(reaction) => {
message.reactions.removeAll().then(async () => {
reaction.emoji.name === ":left_emoji:"
? (currentIndex -= 10)
: (currentIndex += 10);
message.edit(generateEmbed(currentIndex));
if (currentIndex !== 0) await message.react(":left_arrow:");
// react with right arrow if it isn't the end
if (currentIndex + 10 < guilds.length) message.react(":right_arrow:");
});
});
});
bot.login(token);
解决方法
如果要获取消息对象,则必须使用参数“ message”和执行需要消息对象的代码的函数来监听事件“ on”:
bot.on("message",function(message) {
//your code that uses message
});
对于嵌入,您可以直接转到https://discord.js.org/#/docs/main/stable/class/MessageEmbed上的discord.js官方文档,其中有完整说明。
,实际上非常容易做到。 这是嵌入的好模板:
const exampleEmbed = new Discord.MessageEmbed()
.setColor('#0099ff')
.setTitle('Some title')
.setURL('https://discord.js.org/')
.setAuthor('Some name','https://i.imgur.com/wSTFkRM.png','https://discord.js.org')
.setDescription('Some description here')
.setThumbnail('https://i.imgur.com/wSTFkRM.png')
.addFields(
{ name: 'Regular field title',value: 'Some value here' },{ name: '\u200B',value: '\u200B' },{ name: 'Inline field title',value: 'Some value here',inline: true },)
.addField('Inline field title','Some value here',true)
.setImage('https://i.imgur.com/wSTFkRM.png')
.setTimestamp()
.setFooter('Some footer text here','https://i.imgur.com/wSTFkRM.png');
// Code to send embed
channel.send(exampleEmbed);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。