나는이 문제에 대한 답을 찾고 있었지만 해결 방법에 대해 명확하고 명확한 답을 얻지 못했습니다. 따라에 - 내 anguarJS 응용 프로그램에서후 처리 후 서버 설정 가져 오기 (다른 이름보다 먼저)
, 나는 그것이 $http
을 통해 서버로 이동하고 (/api/settings/get
라는 API에서) 일부 설정을 가져, AngularJS와 후 첫 번째 일이/부트 스트랩로드되어 있는지 확인하려면 하위 도메인 및/또는 JWT 또는 다른 사용자 세션이있는 경우 $rootScope
에 추가해야하는 일부 설정 데이터를 검색합니다.
내 문제는 내가 앱을 "정지"할 수 없었고 설정을 가져 와서 $rootScope
을 채울 때에 만 일상 생활을 계속할 수 없었다는 것이 었습니다. 가져 오기 또는 설정 호출이 중단 될 수있는 경우 응용 프로그램이 "중지"해야합니다. 따라서 모든 설정 (서비스, 컨트롤러, 지시문 등)에 액세스 할 수 있으므로 이러한 설정이 매우 일찍로드되는 것이 중요합니다.
나는 $broadcast
이벤트를 시도해보고 내 .run
함수에 넣었지만 여전히 비동기이기 때문에 앱을 해결하는 것으로 보입니다.
apiConnector.get('api/settings/get').then(function(settings) {
$rootScope.settings = settings;
$rootScope.$broadcast('settings-fetched');
});
그러나이 방법이 마음에 들지 않으며 어디에서나이 이벤트를 수신해야합니다.
내 경로가 공개되고 제한적입니다.
누군가가이 문제를 해결할 수있는 올바른 방향으로 나를 도울 수 있기를 바랍니다.
어쩌면 앱에 ui-router를 사용하고 있습니까? 그렇다면 해결이 좋은 해결책이 될 수 있습니다. –
안녕하세요, Erik, 세부 정보를 잊어 버렸습니다. 예, 저는 프로젝트에서 ui.router를 사용하고 있습니다. 어떻게 해결할 수 있습니까? 나는 운이없이 얼마 전에 그것을 시험해 보았습니다. – Mestika