首頁 > web前端 > js教程 > Discord.js v14 遷移:如何修復常見錯誤和重大變更?

Discord.js v14 遷移:如何修復常見錯誤和重大變更?

Mary-Kate Olsen
發布: 2024-12-09 04:47:10
原創
646 人瀏覽過

Discord.js v14 Migration: How to Fix Common Errors and Breaking Changes?

Discord.js v14:重大更改和錯誤解決

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 前綴,並具有 % >

// v14
const button = new ButtonBuilder();
登入後複製

錯誤枚舉

枚舉現在只需要數值:

// v14
const { ButtonStyle } = require('discord.js');
new ButtonBuilder()
  .setStyle(ButtonStyle.Primary);
登入後複製

其他更改:

    SetPresence 活動類型只能是設定為「正在播放」。
  • 新增GatewayIntentBits.MessageContent for message.content 沒有值。
  • 更多重大更改,請參閱 Discord.js 指南:https://discordjs.guide/additional-info/changes-in-v14.html

以上是Discord.js v14 遷移:如何修復常見錯誤和重大變更?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板