我有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。
感谢回复(:
答案 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){...}
}