我有两个中间件,router1用于prod,router2用于test和dev。 如何使用基于NODE_ENV的不同中间件?
以下代码怎么样?
if( process.env.NODE_ENV === 'prod' ) {
app.use('/', router1);
} else {
app.use('/', router2);
}
有更好的解决方案吗? 感谢
答案 0 :(得分:1)
我会做这样的事情来拥有一套清晰可用的环境(你可能需要在一个点上进行升级和测试),这样你就不必在每次向对象添加新的env时修改代码
var routers = {
prod: /* declare prod router */,
dev: /* declare dev router */,
};
app.use('/', routers[process.env.NODE_ENV] || routers.dev);