我是nodejs的新手,我已经编写了一个nodejs程序,并使用node-schedule每分钟对其进行调度。但在运行了一段时间并在控制台上生成了几个日志之后,nodejs抛出了this.job.execute is not a function错误
下面是我使用的代码:
var nodeSchedule = require('node-schedule');
runJob();
function runJob(){
console.log("start");
nodeSchedule.scheduleJob('0 * * * * *',require('./prodModules.js'));
}我得到的日志是:
C:\Users\1060641\Downloads\NodeJS HealthReport\Collector>node src\main\nodejs\collector_main.js
start
Connected
Ready
logged in as Super User
nfs_check running...
NFS Check completed
snapchart_check running...
C:\Users\1060641\node_modules\node-schedule\lib\schedule.js:177
this.job.execute();
^
TypeError: this.job.execute is not a function
at Job.invoke (C:\Users\1060641\node_modules\node-schedule\lib\schedule.js:177:14)
at null._onTimeout (C:\Users\1060641\node_modules\node-schedule\lib\schedule.js:445:11)
at Timer.listOnTimeout (timers.js:92:15)
C:\Users\1060641\Downloads\NodeJS HealthReport\Collector>我不认为我的prodModules.js有任何问题,因为它独立运行,它运行得很好。调度正在抛出错误。
请帮帮忙。
发布于 2017-11-01 06:42:00
节点调度程序回调必须是函数。将您的runJob更改为如下所示:
function runJob() {
console.log("start");
nodeSchedule.scheduleJob('0 * * * * *', function () {
require('./prodModules.js');
});
}发布于 2016-03-31 23:05:53
尝试重新导入'node-schedule',我用一个新的导入运行了您的代码,它按预期工作。
要在windows cmd上下载导入:> npm install node-schedule
https://stackoverflow.com/questions/36336799
复制相似问题