【发布时间】:2017-04-16 09:05:14
【问题描述】:
在一个简单的javascript文件中,我们可以通过在开头添加这两行代码来使用express(通过npm安装后):
var foo = require('express');
var app = foo();
现在,根据 express API 指南:
app 对象通常表示 Express 应用程序。通过调用 Express 模块导出的顶级 express() 函数来创建它
既然app对象调用的是顶级的express()函数,我怎么不能简单的使用:
var app = foo.express();
【问题讨论】:
-
"app 对象正在调用顶级 express" 不正确。您正在调用 express 导出的模块并将结果分配给
app。这与 CommonJS 模块系统有关,并不特定于 Express。 -
@E_net4 如果var app调用的是express导出的模块,那么var express做什么?
-
express是您调用以实例化应用程序对象的函数。 -
请更新您的问题。你了解
require的工作原理吗? -
@E_net4 我相信我明白了。它只是检索被调用的模块并将其放入缓存中。我的问题与语法有关。为什么我们不能通过点符号直接调用 express 函数。
标签: javascript node.js express