Maison > interface Web > js tutoriel > 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 ?

DDD
Libérer: 2024-11-29 09:48:09
original
240 Les gens l'ont consulté

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.
  • Des 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();
    Copier après la connexion

Collection

  • La classe Collection n'accepte désormais que les 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');
    Copier après la connexion
  • .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');
    Copier après la connexion

Voice

  • All VoiceConnection/VoiceBroadcast#play** * Les méthodes ont été unifiées sous une seule méthode de jeu. Par exemple :

    const dispatcher = connection.play('./music.mp3');
    Copier après la connexion
  • 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 des images

  • 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();
    Copier après la connexion

Informations supplémentaires

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal