Express JS 基本路由模板
Express JS Basic Routing Template
有人能给我解释清楚吗?
const express = require("express");
const app = express();
我得到了第一行代码,但是没有得到将变量 "app" 初始化为 express() 的概念?当我们导入 express 时,我们也可以访问 express()?
它在理论上有什么作用? express() 的那个 () 是做什么的?
我们总是必须这样做吗?
谢谢。
The express() function is a top-level function exported by the express module
函数 returns 一个 app 对象,它本质上是一个 Express 应用程序。
The app object has methods for
- Routing HTTP requests; see for example, app.METHOD and app.param.
- Configuring middleware
- Rendering HTML views; see
- Registering a template engine; see app.engine.
如果您熟悉面向对象编程,那么想到这一点的方式就是创建一个实例。
当您导入 express 时,您正在导入 class。但是,您的服务器是 class 的一个实例。所以,当你打电话给
const app = express();
您正在启动您的服务器。您现在拥有可以与 app
交互的服务器的编码,而原始导入仅引用与该服务器相同的 class(即类似于模板)。函数 express()
只是为您初始化一个新的服务器对象。
从技术上讲,您可以有多个 'servers' 运行:
const app1 = express();
const app2 = express();
您可能希望它们彼此独立,这就是您不只使用顶级导入的原因。
有人能给我解释清楚吗?
const express = require("express");
const app = express();
我得到了第一行代码,但是没有得到将变量 "app" 初始化为 express() 的概念?当我们导入 express 时,我们也可以访问 express()?
它在理论上有什么作用? express() 的那个 () 是做什么的? 我们总是必须这样做吗?
谢谢。
The express() function is a top-level function exported by the express module
函数 returns 一个 app 对象,它本质上是一个 Express 应用程序。
The app object has methods for
- Routing HTTP requests; see for example, app.METHOD and app.param.
- Configuring middleware
- Rendering HTML views; see
- Registering a template engine; see app.engine.
如果您熟悉面向对象编程,那么想到这一点的方式就是创建一个实例。
当您导入 express 时,您正在导入 class。但是,您的服务器是 class 的一个实例。所以,当你打电话给
const app = express();
您正在启动您的服务器。您现在拥有可以与 app
交互的服务器的编码,而原始导入仅引用与该服务器相同的 class(即类似于模板)。函数 express()
只是为您初始化一个新的服务器对象。
从技术上讲,您可以有多个 'servers' 运行:
const app1 = express();
const app2 = express();
您可能希望它们彼此独立,这就是您不只使用顶级导入的原因。