How to make collector for select menu?
is there something wrong with my code?, it says 'This interaction failed' when i select
const row = new ActionRowBuilder()
.addComponents(
new StringSelectMenuBuilder()
.setCustomId('select')
.setPlaceholder('Guide')
.addOptions(
{
label: 'Starter',
value: 'starter'
},
{
label: 'Commands',
value: 'commands'
}
)
)
let msg = await interaction.reply({ embeds: [embed], components: [row] })
const collector = msg.createMessageComponentCollector({ componentType: 'SELECT_MENU' })
collector.on('collect', async i => {
const value = i.values[0]
if(!i.user.id == interaction.user.id) return await interaction.reply({ content: 'This selection is not for you!', ephemeral: true })
if(value == 'starter'){
await msg.edit({ embeds: [embed] })
} else if(value == 'commands'){
await msg.edit({ embeds: [commands] })
}
}) const row = new ActionRowBuilder()
.addComponents(
new StringSelectMenuBuilder()
.setCustomId('select')
.setPlaceholder('Guide')
.addOptions(
{
label: 'Starter',
value: 'starter'
},
{
label: 'Commands',
value: 'commands'
}
)
)
let msg = await interaction.reply({ embeds: [embed], components: [row] })
const collector = msg.createMessageComponentCollector({ componentType: 'SELECT_MENU' })
collector.on('collect', async i => {
const value = i.values[0]
if(!i.user.id == interaction.user.id) return await interaction.reply({ content: 'This selection is not for you!', ephemeral: true })
if(value == 'starter'){
await msg.edit({ embeds: [embed] })
} else if(value == 'commands'){
await msg.edit({ embeds: [commands] })
}
})