这可能是一件微不足道的事情,但我是一个有角度的新手。 这是我的angularjs控制器代码
function MyCtrl1($scope, $location, $rootScope) {
$scope.$on('$locationChangeStart', function (event, next, current) {
event.preventDefault();
var answer = confirm("Are you sure you want to leave this page?");
if (answer) {
}
});
}
MyCtrl1.$inject = ['$scope', '$location', '$rootScope'];
在next
变量中我有重定向的网址确认确定。但是如何在angularjs中完成此事。
答案 0 :(得分:7)
您不必手动执行此操作。只有在不确认时才取消该事件:
$scope.$on('$locationChangeStart', function (event, next, current) {
if ( ! confirm("Are you sure you want to leave this page?") ) {
event.preventDefault();
}
});
答案 1 :(得分:6)
您可以使用其他答案中提到的普通javascript 或者你可以使用像这样的角度提供的$ location服务
$location.path(next)
OR
$location.replace(next)
第一个添加到您当前的路径(主要是部分路径)
第二个替换当前路径(例如google.com到yahoo.com)
答案 2 :(得分:-4)
window.location = 'myURL'