【发布时间】:2022-01-24 20:12:05
【问题描述】:
我正在使用 Discord.js V13 (Node JS v16.8.0) 并希望将字符串作为选项传递
module.exports = {
data: new SlashCommandBuilder()
.setName('punish')
.setDescription('Punish a Guild Member')
.addUserOption(option =>
option.setName('target')
.setDescription('Select a user')
.setRequired(true))
.addStringOption(option =>
option.setName('category')
.setDescription('Choose punishment')
.setRequired(true)
.addChoice('Kick', 'kick')
.addChoice('Ban', 'ban')),
async execute(interaction) {
const member = interaction.options.getMember('target');
const type = interaction.options.getString('type')
await member.type(`Reason: Spam`) //member.ban() / member.kick()
await interaction.reply("Kicked member successfully.")
},
};
我得到了用户的选择(类别),想按照它执行惩罚。
当我执行member.type() 时,我当然会得到一个错误,因为我无法将字符串作为选项传递,有什么办法可以做到这一点吗?
我知道你可以做if (type == 'kick') { //... } if (type == 'ban') { //... },但我认为我的解决方案更方便和有用
【问题讨论】:
标签: javascript node.js discord.js