使用socket.io示例作为我的示例:
为什么这在节点中起作用:
var io = require('socket.io').listen(server);
但是在两个不同的步骤中做到这一点不是吗? (即):
var io = require('socket.io');
io.listen(server);
答案 0 :(得分:3)
案例1:
var io = require('socket.io').listen(server);
此处,io
设置为从listen(server)
模块调用socket.io
的结果。
案例2:
var io = require('socket.io');
io.listen(server);
此处,io
设置为socket.io
模块本身。
所以他们执行相同的功能,但io
最终设置为不同的值。
在案例1中看到的函数调用的链接是node.js中常见的习惯用法,但是如果你真的想要使用两行,而io
仍然最终设置为1,那么只是分别捕获require
电话的结果:
var socketio = require('socket.io');
var io = socketio.listen(server);