2013-01-14 6 views
10

現在、従来のアプリケーションと、AngularJSを使用して記述された動的部分を組み合わせています。私は自分のサーバから私のモジュールにいくつかの設定を提供したいと思います。この場合、アプリケーションの「ベース」URLを設定したいと思います。すべてのテンプレートは特定の場所にあり、この場所はサーバーによって決定されます。AngularJSモジュールの設定方法は?

だから私はこのような何か試してみました:しかし、私はこれが正しい方法であることを確認していない

<script type="text/javascript"> 
angular.module('BoekingsModule.config', []).provider('TemplateLocator', function() { 
     this.$get = function() { 
      return // something 
     } 

     this.getTemplate = function(name) { return 'location...'; } 
    }); 
</script> 

:サーバーで

angularForm.config(
function($routeProvider, TemplateLocator) { 
    $routeProvider.when('/', { 
     controller : TestController, 
     templateUrl : TemplateLocator.getTemplate('FormOuterContainer') 
}); 
}); 

を。 要するに:モジュール自体を変更することなく、モジュールにいくつかの(外部の)設定を提供するにはどうすればよいですか?

+0

同じ問題が発生しました。これを理解できましたか? –

答えて

0

これは長い時間です。私はこの記事を完全に忘れてしまった。

最後に、別のアプローチを使用する方が良いと判断しました。 iwein氏によると、SPAとサーバー側のレンダリングを組み合わせることで、アプリケーションはより複雑になります。したがって、私はSPAの部分を別のアプリケーションに抽出しました。このアプリケーションは、私の場合はJSPから参照されます。

私のモジュールがいくつかの追加設定が必要な場合は、REST APIを使用してモジュールを取得します。このようにして、アプリケーションのSPA部分はサーバー側のレンダリングされた部分から完全に切り離されます。

4

あなたは

  1. は、サーバー上のJSでの位置を描画できることはいくつかあります。

    プロ

    :以下の要求 - >より良い性能(通常は)

    短所

    • SPAでレンダリングサーバ側を組み合わせたシステムがより複雑になり、高いメンテナンスコストにつながります。
    • サーバー側のレンダリングで混在させたい場合はjsファイルを適切に圧縮するのが難しく、jsをhtmlに埋め込むことも醜いです。
  2. serviceにテンプレートの位置を抽出します。

    $resourceを使用して、json形式でサーバーからデータを取得できます。これにより、作業が簡単になりますが、Webサーバーの負荷も増加する可能性があります。

関連する問題