2

私のdustJSテンプレートでは、変数の組み合わせを利用して、それを新しい変数として使用しています。たとえば、 と がある場合、を作成したいとしpnameます。さらに..特定の条件に基づいてローカル変数を作成したい場合があります。これらの変数をヘルパーに渡したいと思うかもしれません。cnamename = pname + cnamename = {?.rep} pname {:else} pname + name {/.rep}

DRY 原則に固執するための最良のオプションは、ローカルを作成して、後でこのローカル変数が再び表示されたときに参照できるようにすることです。

のようなパーシャルで試してみましたが、{<name}pname + cname{/name}後で として使用し{+name/}ます。しかし、この方法はヘルパーや条件付きブロックでは機能しません。

考えられる解決策の1つは、ヘルパーを使用して現在のコンテキストに変数を追加することだと思いますが、その方法がわかりません。

ここでの私の質問は、変数を現在のコンテキストに追加する方法、またはその場でローカル変数を定義する方法です。

ご協力いただきありがとうございます。

4

1 に答える 1

1

この問題の解決には、 dust- motes リポジトリの@provide ヘルパーが役立ちます。

何らかの理由で @provide ヘルパーが機能しない場合は、dustjs-helpers リポジトリで提案されている@addToContextヘルパーを参照してください。@addToContext ヘルパーはコンテキストを変更するため、注意しないと同じキーでコンテキスト データを上書きする可能性があります。@provide ヘルパーは @addToContext よりも優先されます。

于 2014-01-31T05:10:19.870 に答える