ホームページ >ウェブフロントエンド >jsチュートリアル >Discord.js v14 移行: 一般的なエラーと重大な変更を修正するには?

Discord.js v14 移行: 一般的なエラーと重大な変更を修正するには?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-09 04:47:10637ブラウズ

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' });

Errors with Components

MessageComponents は、Message プレフィックスなしで名前変更され、Builder を持ちます。 suffix:

// v14
const button = new ButtonBuilder();

列挙型のエラー

列挙型には数値のみが必要になりました:

// v14
const { ButtonStyle } = require('discord.js');
new ButtonBuilder()
  .setStyle(ButtonStyle.Primary);

追加変更点:

  • SetPresence アクティビティ タイプは「PLAYING」にのみ設定できます。
  • 値のない message.content に GatewayIntentBits.MessageContent を追加します。
  • その他の重大な変更については、Discord.js ガイドを参照してください。 https://discordjs.guide/Additional-info/changes-in-v14.html

以上がDiscord.js v14 移行: 一般的なエラーと重大な変更を修正するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。