express - 这两种使用 express 中间件的方法有区别吗?
问题描述
我遇到了两种不同的方式来定义 express、use() 中间件,我想知道它们之间是否有任何区别,或者只是语法糖?
一种
const app = express();
app.use(cors());
app.use(responseTime());
app.use(someFunction);
app.use(anotherHandler);
app.use(failureHandler);
乙
const app = express();
app.use(cors())
.use(responseTime())
.use(someFunction)
.use(anotherHandler)
.use(failureHandler);
解决方案
方法链接是一种在涉及对同一对象执行多个操作的场景中简化代码的技术。
查看Express.js 的源代码和application
:
app.use = function use(fn) {
...
return this:
}
如您所见,use
返回this
因此链接是可能的。
推荐阅读
- java - 为什么 Timestamp 在单元测试中打印运行模型和调试模型之间的差异?
- angularjs - ngRoute 不在 ngView 中显示视图
- unity3d - Unity editorTestsFilter 命令行参数不起作用
- git - VSCODE 的 Git 凭证问题
- google-maps - 如何在颤振小部件中添加 Google map_view?
- css - React,每个数组元素的 z-index
- javascript - 在单独的 axios 模板 js 文件中访问 vuex 状态
- bash - 如何在 bash 中获取给定目录的目录计数?
- javascript - 使用 jQuery 计算 2 个不同的选择自定义数据属性
- javascript - 是否可以使用 react-strap 构建渐进式 Web 应用程序?