首页 > 解决方案 > Mongoose 将 If 添加到中间件

问题描述

我不确定这是 Mongoose 还是 Nodejs Express 错误?

我只想知道是否有办法以 if 的形式添加中间件。这是我的电话:

app.post(pPath, auth, (req, res) => {
    ...
})

我只想做这样的事情:

app.post(pPath, varBoolean ? auth : null, (req, res) => {
    ...
})

上面的例子虽然不起作用。知道我该怎么做吗?

标签: javascriptnode.jscallback

解决方案


Express 方法不支持非函数处理程序。这通常是一件好事,因为这允许在应用程序启动时检测导入问题。

这可以通过传播来实现:

app.post(...[pPath, varBoolean && auth, (req, res) => {
    ...
}].filter(Boolean))

推荐阅读