2

私はいくつかのクライアント javascript と scala ページ テンプレートを持っています。

テンプレートでいくつかの js を初期化する必要があります (scala を使用してテンプレートに提供されるパラメーターによって)。

しかし今、requirejs に移行しようとしており、グローバル変数 ( などwindow.funnyVar) を使用したくなく、モジュール内ですべての js を実行したいと考えています。

したがって、次の問題があります: scala テンプレートに提供される params によってモジュール内のものをどのように初期化するか。

私は次の方法でそれを行います。テンプレート コードでは、新しいモジュールを定義し、すべてのパラメーターをそれに渡します。

define("templateModule", ["lib/helper"],
  function(helper){
    helper.init(@param);
    return {};
});

メインの js ファイルでは、初期化後に他のすべてのことを行います。

require(["lib/helper", "templateModule"],
    function(helper, tpl) {
      // do stuff
    }
);

prod モードを実行するまでは正常に動作します。

prod モードでは、次のエラーが発生します。

JavaException: java.io.FileNotFoundException: /home/gkalabin/app/target/scala-2.10/classes/public/javascripts-min/templateModule.js (No such file or directory)
In module tree:
    main

この問題を解決するにはどうすればよいですか?

upd モジュール ( define)から に切り替える可能な解決策require。しかし、別の解決策があるのではないでしょうか?

ご清聴ありがとうございました。良い一日を過ごしてください!

4

0 に答える 0