【发布时间】:2020-03-11 16:03:05
【问题描述】:
我想在特定时间(每 5 分钟)通过肥皂 api 从几台机器获取信息 所以我正在使用节点计划,我想根据我数据库中的每台机器制定几个计划。 我正在使用此代码:
//fetch machines configrations
function readMachinesConfig() {
return pool.query("SELECT * FROM machines").then(res => {
const machines = {};
res.rows.map(machine => {
let machine_line = machine.machine_name + "/" + machine.machine_line;
machines[machine_line] = { url: machine.url, scantime: machine.scantime };
});
return machines;
});
}
readMachinesConfig().then(res => {
Object.keys(res).map((machine, index) => {
let scantime = "*/" + res[machine].scantime + " * * * *";
//***HOW to set variable name dynamically***
jobs[index] = schedule.scheduleJob(scantime, function() {
console.log(scantime);
});
});
return jobs;
});
所以我想设置动态保存调度函数的变量名称,以便我可以重新调度它或稍后取消它。
jobs[index] = schedule.scheduleJob(scantime, function() { 控制台.log(扫描时间); });
我该怎么做?
【问题讨论】:
-
你能提供一个可行的例子吗?这段代码脱离了上下文。这些函数在哪里调用?职位描述在哪里?
-
jobs 只是一个空数组,我向它声明了函数(现在),但我想要一种方法来放置动态生成的变量而不是它。 (名称在数据库中)
-
将机器配置输入另一个文件后调用该函数(开始为其调用api)
标签: javascript node.js node-schedule