我正在使用 node.js+express+socket.io 编写游戏。我花了很长时间才到达我现在的位置,但我觉得它终于找到了我。我有以这种方式提供 html 和 js 文件的服务器:
app.post('/game', function(req, res) {
handleGame(req, res); //it opens file using fs and forwards with res.end(readFile);
});
app.get('/scripts/*', function(req, res) {
handleStatic(req, res); //same schema
});
现在,我已经登录并访问了网站game.html(从第一个 app.post 收到)。它加载正常,initRight 更改为“bbbb”,如果我在 Firefox 中打开“源代码”,我可以单击并查看player.js和game.js源代码。但是,在 game.js 模块的 init() 函数内部,应该将 initRight 字段再次更改为“AAAAA”,但正如我所见,玩家模块中的 Player 函数在游戏模块中是不可见的(我已经检测到当我在将 socket.io 处理程序移动到不同的模块)。我这样做是因为我在不同的项目中看到过它,我真的不希望下一次通过放置一些 require.js 来获得 require() 函数等而不知所措。我的问题是它应该工作吗?如果是,为什么它可能不在这里?