2014-09-10 3 views
0

내 웹 응용 프로그램에는 많은 뷰 (템플릿)가 있으며 경로 매개 변수에서 templateUrl을 작성하는 정적 패턴이 없습니다. 경로를 업데이트하는 유연성을 고려하여 SQL Server에 라우팅 테이블을 저장하고 & 경로 템플릿 레코드를 검색 할 RESTful 웹 서비스를 만듭니다. 그러나 구성 구문 중에 AngularJS에서 $ http 및 $ rootScope를 호출 할 방법이 없습니다.

.config는 AngularJS의 .run보다 먼저 발생합니다. 구성에서는 상수 및 공급자 만 액세스 할 수 있습니다. 그러나 templateUrl 함수를 사용하고 있기 때문에 런타임에 함수 본문이 호출됩니다. 주입 할 수있는 방법이 있는지 궁금 해서요 $ HTTP 및 다른 어떤 제안도 환영 실행 구문에서 실행됩니다 내 templateUrl 기능에 $ 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와 아주 새로운 해요입니다 . 또한 제 이해가 잘못되었을 때 제게 정정하십시오. 감사합니다. .

+0

관련 항목 : http://stackoverflow.com/questions/15286588/how-to-inject-dependency-into-module-configconfigfn-in-angular – alecxe

+0

감사. 관련 기사에서 본인의 원래 질문에 대한 대답은 '아니오'라고 생각합니다. JavaScript 파일에서 라우트 렌더링 된 서버 나 서버 라우팅 중 하나를 사용해야합니다. –

답변

0

동적 라우팅에 대한 몇 가지 대안이 스레드에 대한 설명 :

AngularJS dynamic routing

다른 대체 솔루션 것 일이이 문서에 설명 된 것처럼 서버 측에서 dinamically 구성을 라우팅 렌더링 :

http://odetocode.com/blogs/scott/archive/2014/03/24/dynamic-routes-with-angularjs.aspx

+0

고마워, 앤디. 'AngularJS 동적 라우팅'스레드의 솔루션은 나에게 약간 해로운 것처럼 보입니다. 이제는 서버 라우팅을 사용하여 문제를 해결합니다. –