JavaScript Model Says窗口是Undefined

时间:2017-03-01 20:23:04

标签: javascript

我创建了一个名为truck.js的新JavaScript文件,我添加了以下代码:

(function(window){

  var App = window.App || {};

  function Truck(truckId, db) {
    this.truckId = truckId;
    this.db = db;
  }

  App.Truck = Truck;
  window.App = App; 

})(window);

module.exports = models;

之后,我将在名为app.js的新节点文件中导入模型,如下所示:

var models = require('./model')

我收到的错误是“窗口未定义”。我究竟做错了什么?

更新:我仍然遇到问题:以下是代码:

customer.js:

function Customer(firstName,lastName) {
    this.firstName = firstName;
    this.lastName = lastName;
}

exports.Customer = Customer;

在app.js中,我使用它:

var customer = require('./customer.js')

如何创建Customer对象的对象?

1 个答案:

答案 0 :(得分:1)

window是Web浏览器提供的全局对象。 Node.js不是Web浏览器,默认情况下没有window对象。

要为Node创建模块,您应该为exports对象分配属性。

  function Truck(truckId, db) {
    this.truckId = truckId;
    this.db = db;
  }

  exports.Truck = Truck;

有关详细信息,请参阅modules in the documentation