【问题标题】:loop in discord.js Slash command builders Choicesdiscord.js 中的循环斜杠命令构建器选择
【发布时间】:2022-01-16 10:20:21
【问题描述】:

我正在尝试根据我的数据库进行动态斜杠命令选项选择

这就是我想要做的

module.exports = {
data: new SlashCommandBuilder()
.setName('delpay')
.setDescription('Remove Payment Option')
.addStringOption(option =>
    option.setName('code')
        .setDescription('Input Payment Code [Case Sensitive]')
        .setRequired(true)
        //example what I try to do//
        for(var i=0;i<x;i++){
            .addChoice(payment[i])
            }
)
}

但我不能在那里执行 for 循环!你能解释我哪里错了吗?你能解释一下我可以用于那种情况的其他方法和例子吗?谢谢你

【问题讨论】:

    标签: discord.js


    【解决方案1】:

    你需要使用option.addChoice,否则会出现SyntaxError

    for(var i=0;i<x;i++){
        option.addChoice(payment[i])
    }
    

    【讨论】:

    • 嗯我不知道这是否相关,但问题不在于我如何执行循环,而在于我在哪里声明了循环。我正在使用 vscode 编写我的代码,它们会自动检测存在错误,因为它们读取 for() 不是循环语法而是 ass 函数
    【解决方案2】:

    更新

    我找到了解决方法。 for 循环放置没有问题,但我需要做一些更改

    module.exports = {
    data: new SlashCommandBuilder()
    .setName('delpay')
    .setDescription('Remove Payment Option')
    .addStringOption(option =>{
        
        option.setName('code')
            .setDescription('Input Payment Code [Case Sensitive]')
            .setRequired(true)
            
            for(var i = 0; i < list.length; i++ ){
                option.addChoice(list[i].name,list[i].code)
            }
            return option
        
        }
                
    )
    
     }
    

    现在代码可以工作了。谢谢大家的帮助!

    【讨论】:

      猜你喜欢
      • 2022-01-07
      • 2022-11-26
      • 2022-01-03
      • 1970-01-01
      • 1970-01-01
      • 2021-11-09
      • 2021-12-15
      • 2021-07-02
      • 2021-11-17
      相关资源
      最近更新 更多