検索

ホームページ  >  に質問  >  本文

node.js - Express模板引擎handlebars里面{{#each XXX}}中使用locals.xx 不起作用的

就是设置了

res.locals.username = xxx

然后页面里面想要在{{#each}}里使用username

{{#each 不管是什么}}
   <p>{{username}}</p>
{{/each}}

username是没有值的

要怎么样才能在{{#eac}}里使用locals.xx呢



伊谢尔伦伊谢尔伦2875日前398

全員に返信(1)返信します

  • ringa_lee

    ringa_lee2017-04-17 15:31:37

    これが正しい使い方です。

    1. まず、ユーザー名に値があることを確認します。

    2. は再帰部分的には使用できません。

    再帰的部分を行わないと出力値がまだない場合は、ハンドルバーではなく、ユーザー名に値がないはずです。

    さらに、どのハンドルバーの実装を使用したかについては言及していませんでした? Express 一体型 HBS またはハンドルバーですか?後者の場合は、まだ統合作業を行う必要があります。

    --------------------------更新---------------------- - ------

    試してみたところ、ローカル変数は {{#each}} では使用できないことがわかりました。
    私は以前、ローカルは再帰パーシャルでのみ使用できないのではないかと考えて、hbs 公式リポジトリに問題を提起しました。実際、{{#each}} は私がテストしたパーシャルでも使用されており、それがそうであるかどうかとは関係ありません。再帰的かどうか。これは hbs のバグのはずです。この問題を説明するためにその問題を更新します。

    問題: https://github.com/pillarjs/h...

    --------------------------更新---------------------- ----------

    まず一時的な解決策を提供します:

    loginUserPhoto をレンダー コンテキストに追加し、{{#each}} の {{@root.loginUserPhoto}} を使用してアクセスします。

    返事
    0
  • キャンセル返事