【问题标题】:what does this line of code in express.js mean?express.js 中的这行代码是什么意思?
【发布时间】:2017-07-24 19:41:33
【问题描述】:

谁能深入解释一下这行代码在 NodeJS 中的含义:

var app = module.exports = express.createServer();

【问题讨论】:

  • 如果您能详细说明该陈述看起来令人困惑或神秘的方式,那将会很有帮助。这是一个非常简单的陈述。
  • @Pointy 那是真的。我需要理解该声明的每一步和每一个字。究竟发生了什么不仅仅是盲目地使用它。普拉文几乎可以回答我。对他的回答不好跟进。 :)

标签: javascript node.js express server


【解决方案1】:
express.createServer();

上面一行有express的实例,并创建一个服务器实例(服务器句柄)并返回整个导出类。

通过上述设置,您可以同时设置 module.exportsapp 以做进一步的事情。

【讨论】:

  • 所以首先我创建了一个服务器实例,然后将其导出,然后将其用作变量“app”对吗?
  • @DragonKnight 你可以把它想象成一个任务链。首先我们评估express.createServer(),它评估为一个快速服务器的实例(这只是JavaScript中的一些值),然后module.exports被分配了那个值。所以现在module.exports 具有该值,然后我们将var app 分配给分配给express.createServer() 等的module.exports,因此它创建了一个分配链
  • @NickZuber 感谢您的回答。如果我稍后写类似 module.exports = express.someOtherMethod() 的东西会怎样?我是覆盖它还是调用module.exports 的新方法?
  • @DragonKnight 您正在覆盖/设置价值伙伴。 :)
【解决方案2】:

可以改写为:

module.exports = express.createServer();
var app = module.exports;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-04
    • 2019-10-14
    • 1970-01-01
    相关资源
    最近更新 更多