var io = require('../ ..')(server)是做什么的?
我在本地构build了https://github.com/Automattic/socket.io/tree/master/examples/chat项目,效果很好。 但是,多了解一个套接字应用程序的工作原理是很好的。
在主启动脚本中,一个被拉入require的模块是
var io = require('../..')(server)
需要什么('../ ..')呢?
谢谢!
当一个目录的path被require
,它会隐式地在那个目录下寻找一个index.js
。
在这种情况下,这相当于
var socket = require("../../index.js"); var io = socket(server);
在提供的示例中,他们只是使用一些简写,并将由调用返回的中间值丢弃为require
。
查看module.require文档了解更多信息。
在这里,在你的代码
要求('../..');
将添加文件forms的path,它已经使用SOCKET.IO,你可以看到你还没有添加Socket.io模块。
另外,如果没有特定的path给出文件或文件夹,Module require将尝试加载index.js或index.node 。 如果没有这样的文件存在,那么它会给出错误。