0

私の Web アプリケーションには多くのビュー (テンプレート) があり、ルート パラメーターだけから templateUrl を構成する静的パターンはありません。ルートを更新する柔軟性を考慮して、ルーティング テーブルを SQL サーバーに保存し、RESTful Web サービスを作成してルート テンプレート レコードを取得および更新します。ただし、構成フレーズ中に AngularJS で $http と $rootScope を呼び出す方法が見つかりません。

AngularJS で .run の前に .config が発生することを理解しています。構成では、定数とプロバイダーにのみアクセスできます。しかし、私は templateUrl 関数を使用しているため、実行時に関数本体が呼び出されます。実行フレーズで実行される te​​mplateUrl 関数に $http と $rootScope を挿入する方法があるかどうか疑問に思っていました...

angular.module('app', ['ngRoute']).config(['$routeProvider', 

        function ($routeProvider) {

            $routeProvider.
                    when('/:param1/:param2/:param3',
                    { templateUrl: function(element){
                      // $http GET routing table from RESTful API
                      // store the table to $rootScope
                      // look up table with param1+param2+param3 as key, get template url 
                      return templateUrlFromTable ;
                    }}).

                    otherwise({redirectTo: '/'});

        }])

私はAngularJSを初めて使用します。他の提案も大歓迎です。また、私の理解が間違っている場合は修正してください。ありがとう。

4

0 に答える 0