私はセットアップにユーザーが入力エラーをレンダリングし、速達でプロパゲーションを停止するためのシンプルなシステムをしようとしているが、これは私がこれまで持っているものです:ヘルパー関数の中で次の呼び出しですか?
routingFunction= (req, res, next) {
//setting up a test in express-validator
var test = req.assert('access_token', 'required').notEmpty();
isValid(test, next);
//non error stuff
}
isValid = (tests, next) => {
//some more code here, that checks if any errors were found and save tem to the array errors.
if(errors.length > 0){
return next(new Error());
}
};
//a middleware that catches errors:
app.use((err, req, res, next) => {
res.json('error').end();
});
これで私の問題は、それはdoesnのことですNext(new Error());
を呼び出すときに伝播を停止すると、true/falseをisValidから返してから次の(新しいError())を返すことができますが、それはコントローラに膨らんでしまうでしょう。ヘルパー関数の中から?
などの詳細
より良い使用はかなり、私のセットアップは、私が持っている問題は、実行され、次の(新しいError() 'と、その関数'した後、それはそう、ということである。このisValid関数のように、コード '// non error stuff'を返して実行しますが、検証は行われなかったので、これは嫌です。 – Himmators