从外部javascript文件调用方法

时间:2014-06-26 16:47:20

标签: javascript html5 node.js

我有2个javaScript文件。 我尝试从一个文件调用一个方法到另一个文件,但是我得到一个错误,我的方法不存在(“TypeError:Object#没有方法'getServer'”)。

第一个文件中有方法:

function getServer(app, server)
{
  var socket = require("socket.io");
  app.get("/", function(request, response) {
    if(request.accepts("text/html"))
    {
      app.use(express.static(__dirname + '/'));
      response.sendfile(__dirname + "/index.html");
    }
  });

  var io = socket.listen(server);
  io.sockets.on('connection', function(client) {
  ............................................
  ............................................
  });

从第二个文件调用该方法:

var msgServer = require('./firstFile.js');
msgServer.getServer(app, server);

在第一个文件中,我连接到服务器并侦听端口。 我想将此服务器发送到secont文件。 我需要第二个文件中的服务器和应用程序才能使用socket.io。

感谢回复(:

1 个答案:

答案 0 :(得分:0)

您必须使用exports var:

exports.getServer = function(app, server)
{
  var socket = require("socket.io");
  app.get("/", function(request, response) {
  ............................................
  ............................................
  });

它允许您为每个文件设置此功能。

另一种方法:

module.exports = {
   getServer: funnction(app, server){...}
 }