避免将箭头函数参数传递给另一个函数
Avoid Passing arrow function params to another function
我正在使用 express 并使用箭头函数来处理我的 req,res
参数。不过,我将此 req,res
委托给另一个辅助函数。
即
app.get("/Model/:id", (req, res) => { Handler.model(req, res) });
我的问题是我是否可以避免这种冗余并只做类似
的事情
app.get("/Model/:id", Handler.model(req, res));
您或许可以进行 η 缩减:
app.get("/Model/:id", Handler.model);
但是您可能必须 bind
它:
app.get("/Model/:id", Handler.model.bind(Handler));
请注意,与您原来的箭头函数不同,它确实将任意数量的参数传递给 model
方法,而不是恰好两个,并且它 return 的 return 值model
方法而不是什么都没有 (undefined
)。这取决于app.get
和Handler.model
他们是否可以处理这些细微差别。
我正在使用 express 并使用箭头函数来处理我的 req,res
参数。不过,我将此 req,res
委托给另一个辅助函数。
即
app.get("/Model/:id", (req, res) => { Handler.model(req, res) });
我的问题是我是否可以避免这种冗余并只做类似
的事情app.get("/Model/:id", Handler.model(req, res));
您或许可以进行 η 缩减:
app.get("/Model/:id", Handler.model);
但是您可能必须 bind
它:
app.get("/Model/:id", Handler.model.bind(Handler));
请注意,与您原来的箭头函数不同,它确实将任意数量的参数传递给 model
方法,而不是恰好两个,并且它 return 的 return 值model
方法而不是什么都没有 (undefined
)。这取决于app.get
和Handler.model
他们是否可以处理这些细微差别。