私は以下のそれぞれを使用するのが最善であるときを理解しようとしています。ここで私の初歩的な理解です:Express.js:app.locals vs req.locals vs req.session
app.locals - アプリケーションレベルでグローバル変数を格納するのに適しています。すべてのユーザー/セッションにこれらの変数の同じ値が表示されます。変数はすべてのビューで使用できます。
res.locals - 特定のリクエスト/応答サイクルの変数を格納するのに適しています。変数は応答に関連付けられたビューでのみ使用できます。
req.session - 一意のユーザーセッション(例:ユーザー名)に関連付けられた変数を格納するのに適しています。これらの変数は、一意のユーザー/セッションのすべてのビューで使用できる必要があります。
私が持っている具体的な使用例は次のとおりです。ユーザーは、mongodbからデータを取得するクエリを実行します。これで、json配列であるこのクエリの結果が、すべてのビュー(http要求)の変数として使用できるようになりました。それぞれのビューがアクセスできるように結果配列を「格納」する最良の方法は何ですか?
おかげ
あなたはほとんど質問に自分で答えました。 req.localsは、現在の要求のビューで使用可能なデータ用です。 –
は 'req.locals'ではなく' res.locals'です – Daniel