在nodeJS中使用传统的javascript对象



我正在努力做一个NODE JS项目,并学习NODE JS结构的输入和输出。我在互联网上到处找,想知道如何在运气不好或运气不好的情况下做到这一点。问题如下:

我有一个名为player的类,它是在名为player.js 的文件中创建的

var playa = function ()
 {
       this.createPlayer = function(){
       }
 }

在我的index.js文件中,我链接我的播放器

      var playa = require("./player.js");

然而,当我尝试引用我的玩家时

  io.on('connection', function(socket){
       var player =   new playa();
        player.createPlayer();
});

控制台告诉我playa不是一个函数,服务器停止。

  1. 我甚至可以在节点中使用传统的OOP JS吗?如果我把这个类移到index.js文件中,它的工作效果很好,但它会变得草率,因为这个类很大,我计划至少使用5个类

2.如果有可能也以这种方式构建我的对象,我如何正确地链接/引用它们?

  1. 如果两者都不存在或都不可能,那么构造对象的正确方法是什么?我希望不要脱离我目前的惯例,因为这是我习惯的,我需要创建多个球员实例

如果将构造函数导出为module.exports属性,则必须将其作为从require():返回的值的属性进行引用

var playa = require("./player.js");
var player = new playa.playa();

如果你想让require()返回函数本身,你可以写

module.exports = function()
{
   this.createPlayer = function(){
   }
}

将其添加到播放器.js文件的底部

module.exports.playa = playa;

这将允许该"类"可用

编辑

您将需要创建如下实例:

var p = require('./player.js')
var player = new p.playa();

最新更新