创建节点模块“xxx不是函数”

时间:2016-09-13 15:11:25

标签: node.js node-modules

我正在创建一个NW.js应用程序。

我创建了一个节点“子模块”(不知道应该如何调用它)update.js

function Updater() {
  if (!(this instanceof Updater)) return new Updater();
  console.log("init");
}

Updater.prototype.CheckUpdate = function() {
  console.log("Checking for update");
};

Updater.prototype.SetTimer = function() {
  console.log("set timer");
};

Updater.prototype.destroy = function destroy() {
  this.remove();
  return true;
};

module.exports = Updater;

我在主脚本run.js中这样称呼它:

var updater = require('./update');
updater.CheckUpdate();
updater.SetTimer();

但是我的日志文件中出现错误(上面没有显示):

  

“TypeError:updater.CheckUpdate不是函数”

我不确定我在这里做错了什么......

1 个答案:

答案 0 :(得分:0)

CheckUpdate和SetTimer是Updater.prototype的属性,而不是Updater的属性。 所以试试这个:

var Updater = require('./update');
var updater = new Updater();
updater.CheckUpdate();
updater.SetTimer();