Nodejs节点调度npm抛出错误“;this.job.execute不是一个函数;
Nodejs node-schedule npm is throwing error "this.job.execute is not a function"
我是nodejs的新手,我已经编写了一个nodejs程序,并使用节点时间表每分钟对其进行调度。但在运行了一段时间并在控制台生成了几条日志后,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
有什么问题,因为独立运行它运行得很好。计划正在引发错误。
请帮忙。
节点调度程序回调必须是一个函数。将您的runJob更改为以下内容:
function runJob() {
console.log("start");
nodeSchedule.scheduleJob('0 * * * * *', function () {
require('./prodModules.js');
});
}
尝试重新导入"nodeschedule",我用新的导入运行了您的代码,它按预期工作。
要在windows上关闭导入cmd:>npm安装节点计划
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 我可以在json对象中添加一个函数吗
- Javascript使函数一个接一个地执行
- 是JavaScript中的函数一个对象
- 两个几乎相等的jQuery函数;一个适用于IE,一个不适用于IE
- 两个Javascript函数一个window.onload=Custom.init;和一个window.onload=f
- 使javascript加载函数一个接一个地执行
- 如何通过两个嵌套的匿名函数(一个带有超时的事件处理程序)传递变量
- 为什么我不能让两个jQuery函数一个在另一个里面呢?
- 给函数一个变量名,而不是它的值
- 如何使用嵌入函数(一个滚动页由Pete - peachananr)
- 是否有可能给JavaScript函数一个类型/类?
- 确保两个函数一个接一个地执行,其中第一个函数内部有一个异步调用
- 两个不同的ajax函数一个接一个调用返回相同的值
- jQuery第一次更改函数一个工作
- 给这个函数一个id
- 如何给回调函数一个值一个变量在特定时刻
- 使用回调使两个函数一个接一个地运行
- 两个函数(一个用php)是否可以用“;onclick”;
- 两个几乎相同的函数.一个函数用Queue进行排队.Jquery效果在queued函数上不起作用.为什么