我有一个 json 配置文件,其中包含要在我的 nodeJS 应用程序中安排的默认作业列表。目的是从这个文件中调度(使用节点调度)我的模块的一些功能来手动定义它的间隔。
问题是 json 文件将函数名称(job.name
下面)存储为字符串,我需要将函数传递给schedule.scheduleJob
.
我试过了this[job.name]
,module[job.name]
但它是一样的。
提前致谢
// ../conf/service
{
"scheduler": {
"defaultJobs": [
{ "name": "jobOne", "schedule": "*/1 * * * * *" }, // each second
{ "name": "jobTwo", "schedule": "*/3* * * * *" } // every 3 seconds
]
}
}
const schedule = require('node-schedule');
const conf = require('../conf/service').scheduler;
let count=0;
function jobOne() {
console.log(`jobOne n°${count++}`);
}
let count1=0;
function jobTwo() {
console.log(`jobTwo n°${count1++}`);
}
conf.defaultJobs.forEach(job => {
schedule.scheduleJob(job.schedule, job.name); // call jobOne and jobTwo
});