Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使setInterval函数能够停止并重新启动?_Javascript_Discord_Discord.js - Fatal编程技术网

Javascript 如何使setInterval函数能够停止并重新启动?

Javascript 如何使setInterval函数能够停止并重新启动?,javascript,discord,discord.js,Javascript,Discord,Discord.js,我一直在尝试为我的discord.jsv12机器人制作一个与Disboard协同工作的函数。基本上,它是一个提醒功能,每两个小时ping一个特定角色,提醒他们启动服务器。我一直在想办法等等!d bump时,机器人通过clearInterval停止setInterval功能,然后再次启动setInterval功能。然而,我一直收到一个错误,说脚本中没有定义某个对象 这是我的密码: client.on('message',异步消息=>{ if(message.content==(`${prefix}

我一直在尝试为我的discord.jsv12机器人制作一个与Disboard协同工作的函数。基本上,它是一个提醒功能,每两个小时ping一个特定角色,提醒他们启动服务器。我一直在想办法等等!d bump时,机器人通过clearInterval停止setInterval功能,然后再次启动setInterval功能。然而,我一直收到一个错误,说脚本中没有定义某个对象

这是我的密码:

client.on('message',异步消息=>{
if(message.content==(`${prefix}setrementer`){
message.channel.send(“已设置间隔!将提醒成员每两小时启动一次服务器!”)
var role=message.guild.roles.cache.find(role=>role.name===“bumping ping”)
让intervalOne=setInterval(()=>{
message.channel.send(`${role}chop chop!该跳了!这个怎么样:

module.exports=(客户端,消息)=>{
如果(message.content=='!d bump'){
const pingRole=message.guild.roles.cache.find(role=>role.name==='bumping ping');
message.channel.send('感谢您中断服务器。请在两小时后再次检查以再次中断服务器。')

setTimeout(()=>message.channel.send(`${pingRole}切碎切碎!是时候碰击了!定义回调的异步签名有什么意义?那么我就要去掉它吗?我刚刚意识到了。谢谢你提出这个问题。
intervalOne
没有在底部处理函数中定义,因为它是在顶部处理函数中声明的。也许你只需要
让intervalOne;
o将两个处理程序函数放在外侧,并将
let intervalOne=…
更改为
intervalOne=…