sourcecode

$exceptionHandler에서 $location - 종속성 충돌

codebag 2023. 10. 5. 21:34
반응형

$exceptionHandler에서 $location - 종속성 충돌

매우 표준적인 작업을 구현하려고 합니다. 예외가 발생하면 다음으로 리디렉션합니다./error페이지입니다.

단순화된 형태의 코드는 다음과 같습니다.

app.factory('$exceptionHandler', ['$location', function($location) {
    return function(exception, cause) {
        $location.path("/error");
    };
}]);

단, 각도JS 불만 사항:순환 종속성 발견: $location <- $exceptionHandler <- $rootScope>

이는 근본적인 한계로 보입니다.$location예외사항을 처리할 때는

하지만 그럼 어떻게 해야 할까요?

이 문제를 해결하려면 전화를 해야 합니다.$injector실행 시 종속성을 해결하기 위해 수동으로:

app.factory('$exceptionHandler', ['$injector', function($injector) {

    var $location;

    return function(exception, cause) {
        $location = $location || $injector.get('$location');
        $location.path("/error");
    };
}]);

언급URL : https://stackoverflow.com/questions/19554624/location-from-exceptionhandler-dependency-conflict

반응형