"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Migração do Discord.js v11 para v12: quais são os problemas comuns e como posso resolvê-los?

Migração do Discord.js v11 para v12: quais são os problemas comuns e como posso resolvê-los?

Publicado em 2024-11-26
Navegar:619

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

Migrando do Discord.js v11 para v12: Resolvendo problemas comuns

Ao atualizar para Discord.js v12, você pode encontrar erros devido a mudanças significativas. Aqui estão alguns problemas comuns e suas soluções:

Managers

  • client.users.get e Guild#roles.find foram substituídos por client.users. cache.get e guild.roles.cache.find, respectivamente.
  • Métodos como message.member.addRole, Guild#createChannel e TextBasedChannel#fetchMessages foram movidas para seus respectivos gerenciadores. Por exemplo:

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

Collection

  • A classe Collection agora só aceita funções para .find e .findKey. Use expressões lambda em vez de chaves e valores de propriedade. Por exemplo:

    collection.find(item => item.property === 'value');
  • .exists, .deleteAll, .filterArray, .findAll foram removidos . Use métodos alternativos ou aguarde promessas.

RichEmbed/MessageEmbed

  • RichEmbed foi substituído por MessageEmbed, que é usado para mensagens recebidas e enviadas O método embeds.
  • addBlankField foi removido. Para adicionar um campo em branco, use:

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

Voice

  • Todos os métodos VoiceConnection/VoiceBroadcast#play*** foram unificados em um único método de reprodução. Por exemplo:

    const dispatcher = connection.play('./music.mp3');
  • Client#createVoiceBroadcast foi movido para ClientVoiceManager.
  • StreamDispatcher estende stream.Writable. Use dispatcher.destroy() em vez de dispatcher.end(). O evento final foi removido em favor do final.

URLs de imagem

  • User#displayAvatarURL e Guild#iconURL agora são métodos . Eles exigem a passagem de um objeto ImageURLOptions para personalização:

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

Informações adicionais

Para obter um guia completo sobre alterações importantes da v12, consulte o documento oficial guia de atualização e changelog. A documentação do Discord.js pode ajudá-lo a encontrar métodos e propriedades específicas.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3