Node.js 根据条件停止和启动cron作业管理器(节点cron)的执行

Node.js 根据条件停止和启动cron作业管理器(节点cron)的执行,node.js,cron,node-cron,Node.js,Cron,Node Cron,所以,我发现了一个关于这个的老问题(这里:),但它对我不起作用(我也不知道为什么)。 我正在使用cron作业管理器(因为我计划同时使用多个计划作业),但据我所知,它应该构建在节点cron上(但我是新手,所以…) 所以,我再次问:在特定条件下,如何处理启动和停止cron作业? 我实际上是在为discord机器人做这个:基本上,用户输入一个启动命令和一个停止命令 第一次尝试是这样的: job = cron('keyTask','* * * * * *', ()=>{ //Do the ac

所以,我发现了一个关于这个的老问题(这里:),但它对我不起作用(我也不知道为什么)。 我正在使用cron作业管理器(因为我计划同时使用多个计划作业),但据我所知,它应该构建在节点cron上(但我是新手,所以…)

所以,我再次问:在特定条件下,如何处理启动和停止cron作业? 我实际上是在为discord机器人做这个:基本上,用户输入一个启动命令和一个停止命令

第一次尝试是这样的:

job = cron('keyTask','* * * * * *', ()=>{
  //Do the actual job
  },
  {
  start: false, 
  timeZone:"Europe/London",
  });

switch args[1]
case go: 
  job.start();
  break;
case stop:
  job.stop();
  break;
这会在用户发出“go”命令时成功启动作业,但在发出“stop”命令时,计划的作业不会停止

第二种尝试是:

  var x = args [1];
  new cron('keyTask' , '* * * * * *', job(doTheThing(x)) ,
  {
  start: false, 
  timeZone:"Europe/London",
  });

其中job()是一个预先定义的函数,包含实际的job,DoTheThing()是根据用户在输入中所说的内容给出true或false的函数。 这将执行计划作业一次,然后停止。 不知何故,我怀疑这里的问题与我在外部定义函数有关,而在大多数示例中,我看到函数总是写在cron()中。 所以,我没有主意了:提前谢谢你的帮助