Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menghijrahkan Bot Discord.js Saya dari v13 ke v14?

Bagaimana untuk Menghijrahkan Bot Discord.js Saya dari v13 ke v14?

Patricia Arquette
Patricia Arquetteasal
2024-12-06 03:15:141035semak imbas

How to Migrate My Discord.js Bot from v13 to v14?

Discord.js v14: Panduan Memecahkan Perubahan dan Migrasi

Pengenalan

Naik taraf daripada Discord.js v13 kepada v14 memperkenalkan banyak perubahan besar, beberapa yang mungkin memberi kesan kepada kod sedia ada dengan ketara. Artikel ini akan membimbing anda melalui perubahan utama dan menyediakan penyelesaian untuk menangani sebarang ralat yang dihadapi semasa penghijrahan.

Memecahkan Perubahan

1. Peristiwa Mesej dan Interaksi

  • Mesej dan peristiwa interaksi telah dialih keluar.
  • Gunakan messageCreate dan interaksiBuat acara sebaliknya.

2. Niat

  • Niat telah dikemas kini untuk menggunakan enum GatewayIntentBits.
  • Ganti rentetan atau niat nombor dengan bendera GatewayIntentBits yang sepadan.

3. Interaksi

  • Pengadang jenis interaksi (cth., isCommand, isMessageComponent) telah dialih keluar.
  • Sebaliknya, gunakan perbandingan terhadap InteractionType enum.

4. Saluran

  • Pelindung jenis saluran (mis., isDM, isText) telah dialih keluar.
  • Bandingkan channel.type dengan enum ChannelType yang sepadan.

5. Builders and Embeds

  • MessageEmbed telah dinamakan semula kepada EmbedBuilder.
  • MessageAttachment menggunakan objek AttachmentData sebagai parameter kedua dan bukannya nama.
  • MessageComponents mempunyai telah dinamakan semula dan memerlukan Pembina dengan akhiran Pembina (cth., ButtonBuilder, ActionRowBuilder).

6. Enums

  • Semua parameter enum kini menerima nombor secara eksklusif.

7. Jenis Aktiviti

  • Jenis aktiviti setPresence hanya boleh ditetapkan kepada "MAIN."

8. Kandungan Mesej

  • Jika message.content kosong, tambahkan GatewayIntentBits.MessageContent pada tatasusunan niat.

Panduan Migrasi

Untuk mengurangkan melanggar perubahan, pertimbangkan langkah berikut:

  • Kemas kini Versi Nod: Naik taraf kepada Node 16.9 atau lebih tinggi.
  • Niat Kemas Kini:

    // v13
    client.on('GUILDS', 'GUILD_MESSAGES', 'GUILD_MESSAGE_REACTIONS');
    // v14
    client.on(GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.GuildMessageReactions);
  • Refactor Interaksi Pengawal:

    // v13
    if (interaction.isCommand()) {}
    // v14
    if (interaction.type === InteractionType.ApplicationCommand) {}
  • Kemas kini Jenis Pengawal untuk Saluran:

    // v13
    if (message.channel.isText()) {}
    // v14
    if (channel.type === ChannelType.GuildText) {}
  • Namakan semula Benam dan Pembina:

    // v13
    const embed = new MessageEmbed();
    const button = new MessageButton();
    // v14
    const embed = new EmbedBuilder();
    const button = new ButtonBuilder();
  • Gunakan Pemalar Berasaskan Nombor:

    // v13
    new ButtonBuilder().setStyle('PRIMARY');
    // v14
    new ButtonBuilder().setStyle(ButtonStyle.Primary);

Dengan mengikuti ini garis panduan, anda boleh berjaya memindahkan kod anda ke Discord.js v14 dan mengelakkan sebarang kemungkinan ralat atau gangguan. Untuk mendapatkan gambaran menyeluruh tentang perubahan, rujuk panduan Discord.js di https://discordjs.guide/additional-info/changes-in-v14.html.

Atas ialah kandungan terperinci Bagaimana untuk Menghijrahkan Bot Discord.js Saya dari v13 ke v14?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn