2017-08-23 7 views
0

私の翡翠テンプレートとの間にエラーがある場合、これを防ぐ方法がわかりません。鉛筆でも表示されます。Expressが翡翠テンプレートにエラーを表示しないようにする

enter image description here

どのように私はこれを防ぐことができますか?

+0

どのようにビューをレンダリングするのですか?コードを表示してください。 – alexmac

+0

exports.about =(req、res)=> { res.render( '約'、{ タイトル: 'について' }); }; – Antoine

答えて

3

クライアントに送信するデフォルトの動作ではなく、エラーを処理できます。コールバックを使用し、エラーをチェックします。エラーがある場合は表示しないで、代わりに以下のようなエラーページを表示してください。

res.render(your_template, {}, function(err, html) { 
     if(err) { 
      res.redirect('/error'); 
     } else { 
      res.send(html); 
     } 
    }); 

参考:How do I turn off Node.js Express (ejs template engine) errors for production?

+0

すべてのルートにハンドラを追加する方法はありますか? – Antoine

+1

@AnthonyMayfield明示的なエラーハンドラ 'app.use(err、req、res、next)'を作成し、ルータから 'next(err)'を呼び出します。このハンドラでは、 'res.redirect'を使います。 – alexmac

関連する問題