"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Migration de Discord.js v11 vers v12 : quels sont les problèmes courants et comment puis-je les résoudre ?

Migration de Discord.js v11 vers v12 : quels sont les problèmes courants et comment puis-je les résoudre ?

Publié le 2024-11-26
Parcourir:634

Discord.js v11 to v12 Migration: What are the Common Issues and How Can I Solve Them?

Migration de Discord.js v11 vers v12 : résolution des problèmes courants

Lors de la mise à niveau vers Discord.js v12, vous pouvez rencontrer des erreurs dues à changements de rupture. Voici quelques problèmes courants et leurs solutions :

Managers

  • client.users.get et Guild#roles.find ont été remplacés par client.users. cache.get et guild.roles.cache.find, respectivement.
  • Méthodes telles que message.member.addRole, Guild#createChannel, et TextBasedChannel#fetchMessages ont été déplacés vers leurs gestionnaires respectifs. Par exemple :

    await message.member.roles.add(role);
    await message.guild.channels.create('welcome');
    const messages = await message.channel.messages.fetch();

Collection

  • La classe Collection n'accepte désormais que fonctions pour .find et .findKey. Utilisez des expressions lambda au lieu de clés et de valeurs de propriété. Par exemple :

    collection.find(item => item.property === 'value');
  • .exists, .deleteAll, .filterArray, .findAll ont été supprimés . Utilisez des méthodes alternatives ou attendez les promesses à la place.

RichEmbed/MessageEmbed

  • RichEmbed a été remplacé par MessageEmbed, qui est utilisé à la fois pour les messages reçus et envoyés. embeds.
  • La méthode addBlankField a été supprimée. Pour ajouter un champ vide, utilisez :

    embed.addField('\u200B', '\u200B');

Voice

  • Toutes les méthodes VoiceConnection/VoiceBroadcast#play*** ont été unifiées sous une seule méthode de lecture. Par exemple :

    const dispatcher = connection.play('./music.mp3');
  • Client#createVoiceBroadcast a été déplacé vers ClientVoiceManager.
  • StreamDispatcher étend stream.Writable. Utilisez dispatcher.destroy() au lieu de dispatcher.end(). L'événement de fin a été supprimé au profit de finish.

URL d'image

  • User#displayAvatarURL et Guild#iconURL sont désormais des méthodes . Ils nécessitent de transmettre un objet ImageURLOptions pour la personnalisation :

    const avatar = user.displayAvatarURL();
    const icon = mesage.guild.iconURL();

Informations supplémentaires

Pour un guide complet des dernières modifications de la v12, reportez-vous au site officiel guide de mise à jour et journal des modifications. La documentation Discord.js peut vous aider à trouver des méthodes et des propriétés spécifiques.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3