Discord.js v14 引入了重大更改,影响了库的许多领域。为了确保您的代码无缝过渡,了解这些更新至关重要。本文分析常见错误场景并提供解决方案来帮助您完成过渡。
消息和交互事件的错误
消息和交互事件已重命名。分别使用 messageCreate 和 interactionCreate,而不是消息和交互。
意图错误
现在可以通过 GatewayIntentions 访问意图。对 Intents.FLAGS.GUILDS 使用 GatewayIntentBits.Guilds,对 Intents.FLAGS.GUILD_MESSAGES 使用 GatewayIntentBits.GuildMessages。
交互错误
交互类型的类型保护已删除。相反,将interaction.type与InteractionType进行比较:
// v14 if (interaction.type === InteractionType.ApplicationCommand) {}
通道错误
通道类型的类型保护已被删除。使用channel.type与ChannelType进行比较:
// v14 if (channel.type === ChannelType.GuildText) {}
构建器和嵌入的错误
MessageEmbed 现在是 EmbedBuilder。 MessageAttachment 重命名为 AttachmentBuilder,需要 AttachmentData 对象:
// v14 const embed = new EmbedBuilder(); // v14 const attachment = new AttachmentBuilder(buffer, { name: 'image.png' });
组件错误
MessageComponents 重命名时不带 Message 前缀,并具有 Builder 后缀:
// v14 const button = new ButtonBuilder();
错误枚举
枚举现在只需要数值:
// v14 const { ButtonStyle } = require('discord.js'); new ButtonBuilder() .setStyle(ButtonStyle.Primary);
其他更改:
以上是Discord.js v14 迁移:如何修复常见错误和重大更改?的详细内容。更多信息请关注PHP中文网其他相关文章!