执行此apnagent
tutorial并且我不明白第二行中设置值的“管道”的目的是什么。
var apnagent = require('apnagent')
, agent = module.exports = new apnagent.Agent(); // <--- WHY this here
特别是我不明白为什么module.exports = agent;
需要,如果在教程前面有这样的一行:
module.exports = "<a1b56d2c 08f621d8 7060da2b c3887246 f17bb200 89a9d44b fb91c7d0 97416b30>";
为什么module.exports
需要被覆盖?
答案 0 :(得分:1)
实际上,它不是真正的管道,在Unix世界中没有|
(管道)。
此模式可确保new apnagent.Agent()
的本地范围和agent
的{{1}}均可访问require
。
与完成相同:
module.exports
答案 1 :(得分:0)
module.exports
可以导出您的代码
new apnagent.Agent();
制作新的代理商对象
agent = module.exports = new apnagent.Agent();
和
module.exports = new apnagent.Agent();
agent = module.exports
Module.exports
指向新对象,agent
与module.exports
引用断开连接,然后通过agent = module.exports
重新导出module.exports
。< /强>
代理并将其分配给module.exports,以便我们可以从所有或不同的游乐场场景中访问它。