2013-10-07 6 views
2

두 개의 별개 섹션이있는 각진 앱이 있습니다. 각 섹션은 사용자 유형에 속합니다. 몇 가지 공통점이 있지만 대부분 다른 점이 있습니다. 예를 들면 다음과 같습니다.각도로 모듈을 동적으로로드 할 수 있습니까?

/receptionist 
    - View Diary 
    - Answer Phone 
    - Make Tea 
/ceo 
    - View Diary 
    - Announce Earnings 
    - Strategize 

다이어리를 보는 데 필요한 기능은 수신자와 수신자 모두에게 있습니다. 내가 로그인 한 사람에 따라로드 모듈 (및 라우팅)을 변경하고자 생각했다.

if (user.type === 'receptionist') { 
    app = angular.module('receptionistApp', ['diary', 'phone', 'tea']); 
else { 
    app = angular.module('ceoApp', ['diary', 'earning', 'strategy']); 
} 

좀 중복 있지만 많이 있기 때문에이 작업을 수행하고자하고있다. 그리고 각 응용 프로그램은 실제로 매우 큽니다.

여기서는 보안에 현명한 것을 얻고 싶지 않습니다. 각 앱에는 다양한 유형의 사용자와 역할이 있습니다. 그것들은 WebApi를 통해 보안됩니다. 나는 그 중 45 %가 다른 앱에 관심이 없을 때 모든 모듈을 로딩하는 것을 피하고자한다.

답변

2

예.

또한 모듈 even more dynamically을로드하고 즉시로드하는 대신 AngularJS를 초기화 할 수 있습니다. ng-app 지시문을 제거하고 수동 초기화를 수행 할 수 있습니다.

angular.element(document).ready(function() { 
    angular.module('myApp', []); 
    angular.bootstrap(document, ['myApp']); 
}); 
+0

멋진데 런타임시 모듈을 연결하면 어떨까요? 'bootstrapping/initialization? – Cherniv

+0

그것에 대해 확실히 모르겠지만, 나는 당신이 할 수있는 [다른 요소에 부트 스트랩] 알아요 (http://stackoverflow.com/questions/16342603/how-to-run-two-separate-angular-js-apps-in-the -same-page? rq = 1) 다른 요소에서 ng-app를 사용할 수 있기 때문에 아마 모듈이 무엇을 할 것인가에 달렸지 만, 기본적으로 지원되는 것은 의심 스럽습니다. – Philipp

관련 문제