1. ホーム
  2. ジャバスクリプト

[解決済み】Handlebars.jsの各ループのスコープ外の変数にアクセスする。

2022-04-10 05:39:43

質問

私は、このようなhandlebars.jsのテンプレートを持っています。

{{externalValue}}

<select name="test">
    {{#each myCollection}}
       <option value="{{id}}">{{title}} {{externalValue}}</option>
    {{/each}}
</select>

そして、これが生成された出力です。

myExternalValue

<select name="test">
       <option value="1">First element </option>
       <option value="2">Second element </option>
       <option value="3">Third element </option>
</select>

予想通り idtitle の各要素のフィールドは myCollection を生成しています。そしてセレクトの外側では externalValue 変数が正しく出力されます ("myExternalValue") 。

残念ながら、オプションのテキストでは externalValue の値が出力されることはありません。

質問ですが、ループ内からhandlebars.jsそれぞれのスコープ外の変数にアクセスするにはどうしたらいいのでしょうか?

どのように解決するのですか?

試す

<option value="{{id}}">{{title}} {{../externalValue}}</option>

../ パスセグメントは、親テンプレートのスコープを参照しています。