내 app.js
에 3 개의 경로가 있지만 다른 경로로 만들기에서 전환 할 때 사용자가 의도적으로 전환 할 것인지 또는 실수했는지 확인하고 싶습니다. 사용자가 페이지에 머무르거나 페이지를 떠날 것을 요구하는 리턴 팝업이 될 것입니다. 보통의 경우는이 코드 일 것이다 :각도 : 함수 호출을 기반으로 경로를 전환하는 방법
window.onbeforeunload = confirmExit;
function confirmExit() {
return "You have attempted to leave this page. Are you sure?";
}
하지만이 SPA 응용 프로그램이기 때문에 내가 노선 전환하는 동안이 기능을 실행해야합니다 :
여기나의 ROUTES입니다
testApp.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/tests', {
templateUrl: 'partials/list.html',
controller: 'ListCtrl'
}).
when('/tests/:testsId', {
templateUrl: 'partials/detail.html',
controller: 'DetailCtrl'
}).
when('/create/', {
templateUrl: 'partials/create.html',
controller: 'CreateCtrl'
}).
otherwise({
redirectTo: '/tests'
});
}]);
어떤 도움을 많이 주시면 감사하겠습니다.
누군가 "백 스페이스"를 누르면 어떻게됩니까? – Alex
언제? 리디렉션 후? 그는 다른 SPA/웹 사이트와 마찬가지로 이전 페이지로 리디렉션되지만 위치 기록에 새 경로를 추가하는 대신 위치를 바꾸지 않도록 선택할 수 있습니다 (질문에 포함되지 않음). –
아니요, 묻습니다. 페이지 만들기 및 백 스페이스를 누르면 다른 페이지에서 왔을 수 있으므로이 경우에는 해당 페이지로 다시 리디렉션됩니다.이 지시어는 트리거되지 않습니다. – Alex