Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

119
Vistas
¿Cómo puedo agregar un rol a un usuario en DiscordJS v13?

Tengo problemas para agregar un rol a un usuario con DiscordJS v13. ¿Hay alguna forma de hacerlo? Cada vez que los agrego, no están definidos. Aquí está el código donde quiero agregar el rol de agregar. Soy un principiante en discord.js, así que tengan paciencia conmigo. ¡Gracias!

 } else if (commandName === 'verification'){ let code1 = 'A96B2UUH' const code = options.getString('code') if(code === code1){ interaction.reply({ content: 'The code has been accepted. Welcome to the hub!', ephemeral: true, }) let role = message.guild.roles.cache.some(role => role.name === 'Equitability') message.member.roles.add(role) }else{ interaction.reply({ content: 'You entered the wrong code. Please contact the administrators to gain access.', ephemeral: true, }) } } })

Edito: ¡Lo arreglé! Cambié algunas cosas y de alguna manera funcionó. Aquí está el código.

 bot.on('interactionCreate', async interaction => { if(!interaction.isCommand()) return const { options } = interaction if(interaction.commandName === 'verification'){ let code1 = 'A96B2UUH' const code = options.getString('code') if(code === code1){ await interaction.reply({ content: 'You entered the correct code. Welcome to the hub!', ephemeral: true, }) var guild = bot.guilds.cache.get('907259574342537236') const member = await guild.members.fetch(interaction.user.id) const role = await guild.roles.fetch('907261775622328352') member.roles.add(role) }else{ await interaction.reply({ content: 'The code you entered is incorrect. Contact the administrators to gain access the server.', ephemeral: true, }) } } })
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Está utilizando .some() que devuelve un Boolean ( true / false ). Desea el objeto de rol, por lo que usa .find() que toma los mismos argumentos, pero devuelve el objeto de rol en su lugar. Además, si el rol no está en caché, puede usar RoleManager.fetch() para obtenerlo de la API.

 await message.guild.roles.fetch() //optional - put it if the role is valid, but is not cached let role = message.guild.roles.cache.find(role => role.name === 'Equitability') message.member.roles.add(role)
about 4 years ago · Juan Pablo Isaza Denunciar

0

Obtener roles en Discord.js v13 requiere que se almacenen en caché, por lo que la mejor manera de agregar un rol que sabes que existe es simplemente por ID.

Para obtener una ID para una función, abra Configuración del servidor> Funciones> Haga clic con el botón derecho> "Copiar ID"

Entonces puede simplemente hacer message.member.roles.add("roleId");

Si no está completamente seguro de si existe un rol (es decir, a través de la entrada del usuario), puede obtener todos los roles del servidor (diferentes a .cache.get ), luego .filter , sin embargo, esto no parece ser lo que está haciendo así que no lo incluiré

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda