0

Play Framework 1、生成されたページに 1 回だけ JavaScript ファイルを含むタグがありますか?

例:

次のコードが必要です:

#{press.script 'my.script.js'}
#{press.script 'my.script.js'}

結果のページに一度だけ宣言を挿入my.script.jsして、Play が以下を生成するようにします。

<script src="/path/to/my.script.js"></script>

pressモジュールは である必要があることに注意してくださいversion >= 1.0.22

これまでのところ、必要なもの以外はすべて見つかりました。

  • #{press.script 'my.script.js'}同じjsファイルで2回指定された場合、単に例外をスローします
  • モジュールのバージョン1.0.11は、ドキュメントに従って必要なことを行うべきタグプロパティを追加しましたが、次のバージョンでは不思議なことに削除されました...pressignoreDuplicates
  • モジュールのバージョン1.0.12は、構成pressに追加press.allowDuplicatesする可能性を追加しましたが、次のバージョンでは、不思議なことに再び削除されました...
  • #{press.single-script 'my.script.js'}単純に js ファイルを圧縮<script>し、生成されたファイルに 2 回追加します

お知らせ下さい

4

1 に答える 1

1

ないと思います。このような同様の問題を解決しました。

1 つのテンプレートがあるとしmain.htmlます。他のすべてのテンプレートは、このテンプレートを拡張します。Main.html含まれていscripts.htmlます。現在の URL に基づいて、Controller はform.htmlwhich extends をレンダリングしますmain.html。にform.html必要なウィジェットがありますmy.script.js。このページ (スクリプトが必要) にのみ含まれていることを確認するために、次の変数を設定しました。

#{set useMyScript: true /}

ではscripts.html、この変数をチェックし、必要な場合にのみこのスクリプトをレンダリングします。

#{if useMyScript}
    #{press.script 'my.script.js'}
#{/if}

したがって、これはまさにあなたのケースではありませんが、このソリューションで useMyScript を true に複数回設定し、Javascript を 1 回だけ含めることができると確信しています。

これが役立つことを願っています!

于 2013-04-10T14:36:27.900 に答える