有没有办法使用agenda
库在特定日期开始工作?
这就是我创造工作的方式:
const someData = {
name: 'Name',
value: 'Value'
}
const job = await agenda.create('daily alert', someData);
await job.repeatEvery('1 day').save() // specify when to start
但是此时工作在创建之后就开始了,我想以某种方式指定它应该开始的日期,就像明天一样。
when
, job
, data
)安排作业在给定时间运行一次名称。什么时候可以是日期或字符串,如明天下午5点。 https://github.com/agenda/agenda#schedulewhen-name-data-cb
agenda.define('send email report', {priority: 'high', concurrency: 10}, (job, done) => {
const {to} = job.attrs.data;
emailClient.send({
to,
from: '[email protected]',
subject: 'Email Report',
body: '...'
}, done);
});
(async function() {
await agenda.start();
await agenda.schedule('tomorrow at 5pm', 'send email report', {to: '[email protected]'});
})();