programing

UI-Router state.go 상태 변경 시 콜백

newstyles 2023. 3. 10. 21:20

UI-Router state.go 상태 변경 시 콜백

state.go가 정상적으로 호출되면 콜백이 필요하고 경보메시지를 설정합니다.현재 메시지는 state.go가 호출된 후 배열로 푸시됩니다.State.go가 컨트롤러를 호출하고 경보 메시지를 포함하는 배열이 빈 상태로 설정됩니다.

그 결과 경보 메시지는 표시되지 않습니다.

컨트롤러:

$scope.alerts = []; // empty array, initialized on startup
.....
// This could be any function
.success(function(data, status, headers, config, statusText){
     $state.go($state.current, {}, {reload : true});
     $scope.alerts.push({type : 'success', msg : status});
})
.error(function(error){
    console.log(error.message);
});

$state.go()약속을 반환합니다.

다음과 같은 작업을 수행합니다.

$state.go('wherever', {whenever: 'whatever'}).then(function() {
  // Get in a spaceship and fly to Jupiter, or whatever your callback does.
});

상태 변경 리스너를 사용할 수 있습니다.

 $rootScope
            .$on('$stateChangeSuccess',
                function (event, toState, toParams, fromState, fromParams) {
                    //show alert()
                });

상태 변경 이벤트를 참조하십시오.

언급URL : https://stackoverflow.com/questions/28785168/ui-router-state-go-call-back-on-state-change