为什么这个不行?
var tournRule = new schedule.RecurrenceRule();
tournRule.dayOfWeek = 3;
tournRule.hour = 03;
tournRule.minute = 08;
tournRule.tz = 'Central Time';我尝试过在**.tz =‘CDT’部分中输入这么多不同的内容,但是无论如何,它不会触发。从这件事上我完全没有错误。
蒂娅!
编辑
我想我也应该加一句:
var tr = schedule.scheduleJob(tournRule, function() {
console.log("Im online. Im online");
})编辑2
我想指定时区作为ESL团队,我正在开发的机器人为中美球员和英国球员有不同的时间表。
发布于 2018-06-06 10:24:07
我建议您试一下cron包:https://www.npmjs.com/package/cron。
我发现它可以很好地与时区一起工作,这里有一个例子:
const CronJob = require('cron').CronJob;
const job = new CronJob({
// Run at 05:00 Central time, only on weekdays
cronTime: '00 00 05 * * 1-5',
onTick: function() {
// Run whatever you like here..
console.log('CronJob ran!!');
},
start: true,
timeZone: 'US/Central'
});有关时区的列表,请参见此处:区带
发布于 2020-01-30 18:30:33
如果指定了时区,则必须指定作业名以及第一个参数。
要触发事件,必须将作业名称指定为第一个参数:
schedule.scheduleJob('job name', '0 14 * * *', 'Asia/Shanghai', () => {
console.log('Will execute on 14:00:00 GMT+8:00 (CST) everyday');
});*到目前为止,该项目的npm页面没有提到job name的要求。它只记录在GitHub https://github.com/kqkq/node-schedule-tz#readme上。
发布于 2018-06-06 08:40:17
根据https://www.npmjs.com/package/node-schedule-tz,您不必指定时区,下面是他们站点的工作示例:
var rule = new schedule.RecurrenceRule();
rule.minute = 42;
var j = schedule.scheduleJob(rule, function(){
console.log('The answer to life, the universe, and everything!');
});上面的例子会在每小时触发,以:42结尾,比如7:42,8:42,9:42等等,确保你明白像cron一样的东西是如何工作的。
https://stackoverflow.com/questions/50715484
复制相似问题