尝试让漫游器在延迟之间输入列表

时间:2018-10-02 01:30:16

标签: javascript node.js discord.js

尝试让该漫游器发送一条从1到20的消息,一次发送一条,每条消息之间都有延迟。遇到一个错误,它没有延迟,并且立即向垃圾邮件发送了20条。

bot.on('message', function(message) {

let prefix = botconfig.prefix;
let messageArray = message.content.split(" ");
let cmd = messageArray[0];
let args = messageArray.slice(1);

    if (cmd === `${prefix}loop`){
      var i;
      while(i < 20){
         var myVar = setInterval(myTimer, 2000)
         function myTimer(){
            message.channel.send(i);
         }
         i++;   
      }
    }
});

如果有任何帮助,或者有人能指出正确的方向,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以设置一个间隔,该间隔每秒打印并递增i,如果到达20,则销毁该计时器。

if (cmd === `${prefix}loop`) {
  var i = 0;
  var timer = setInterval(function() {
    message.channel.send(++i);
    if (i === 20) clearInterval(timer);
  }, 1000);
}