양식을 제출 한 후 페이지의 URL을 변경하는 데 문제가 있습니다.
내 앱의 흐름은 다음과 같습니다.
- 경로가 설정되고 URL이 특정 양식 페이지로 인식됩니다.
- 페이지로드, 컨트롤러 설정 변수, 지시문이 실행됩니다.
- AJAX를 사용하여 특수 양식 제출을 수행하는 특수 양식 지시문이 실행됩니다.
- AJAX가 수행 된 후 (Angular는 AJAX를 처리하지 않음) 콜백이 시작되고 지시문
$scope.onAfterSubmit
은 위치를 설정하는 함수를 호출합니다 .
문제는 위치를 설정 한 후 아무 일도 일어나지 않는다는 것입니다. 위치 매개 변수도 설정하려고 시도했습니다 /
... 아니요. 또한 양식을 제출하지 않으려 고 노력했습니다. 아무것도 작동하지 않습니다.
코드가 onAfterSubmit
함수에 도달하는지 테스트 했습니다.
내 유일한 생각은 어떻게 든 함수의 범위가 변경되었다는 것입니다 (지시문에서 호출 된 이후), 그리고 다시 onAfterSubmit
범위가 변경되면 어떻게 호출 할 수 있습니까?
여기 내 코드가 있습니다
var Ctrl = function($scope, $location, $http) {
$http.get('/resources/' + $params.id + '/edit.json').success(function(data) {
$scope.resource = data;
});
$scope.onAfterSubmit = function() {
$location.path('/').replace();
};
}
Ctrl.$inject = ['$scope','$location','$http'];
누군가 나를 도와 줄 수 있습니까?