express app.get 回调函数删减
最近在学习express框架。 写的函数多了 想把函数抽出来,要不然,app.js 会显得臃肿
抽出来之后是这样: app.get(’/test’, function (req, res){ apiHandler(req,res);//引进来的模块 } ); 这样可以运行。
我又觉得 外面一层 function没啥用 , 看起来也不爽,想去掉,干脆写成这样 app.get(’/test’, apiHandler(req,res) ); 这样就会报错,参数传不进去, 请教一下 这是为何啊?
4 回复
app.get('/test', function (req, res) {
apiHandler(req,res);
});
效果等价于以下,前提是 apiHandler
传入的参数正好是 req
与 res
:
app.get('/test', apiHandler);
建议可以同时学习 ES6 syntax,lambda function 可以用 arrow function 表示:
app.get('/test', (req, res) => apiHandler(req,res));
兄弟考虑过多个中间件了吗。 你这样单一一个,没问题,多个没法处理。
@zhang962976642 我现阶段 把 每个接口的 功能都写在 一个函数里了,
@grass0916 原来是这样,明白了,谢谢大神