我有2個javaScript文件。 我試圖調用從一個文件到另一個文件的方法,但我得到一個錯誤,我的方法不存在(「TypeError:Object#has no method'getServer'」)。從外部JavaScript文件調用方法
有從第一個文件的方法:
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。
感謝答覆(:
第一個文件是否將getServer封裝在另一個變量和/或f中unction還是它在全局命名空間? – joshboley
你是在設置'module.exports.getServer = getServer'還是爲'module.exports'創建一個包含'getServer'的新對象。 –
它位於全局命名空間中。 – user3491963