使用location.path()重定向

时间:2016-11-22 05:03:26

标签: angularjs

首次点击按钮时,它会重定向到指定位置,但稍后点击它会重定向到登录表单。我完全被卡住了......请帮忙。

$scope.edit = function () {    
      $location.path('/Appointment');    
}    

$stateProvider.state('Appointment', {    
            url: '/Appointment',
            parent: 'common',
            templateUrl: 'templates/Appointment.html',
            controller: 'AppointmentCtrl'    
        });

$ urlRouterProvider.otherwise(' /登录&#39);

2 个答案:

答案 0 :(得分:0)

您可以在角度中使用$window

例如

(function () {
    'use strict';

    angular
        .module('app')
        .controller('LoginCtrl', LoginCtrl);

    LoginCtrl.$inject = ['$window', 'loginSrv', 'notify'];

    function LoginCtrl($window, loginSrv, notify) {
        /* jshint validthis:true */
        var vm = this;
        vm.validateUser = function () {
             loginSrv.validateLogin(vm.username, vm.password).then(function (data) {          
                if (data.isValidUser) {    
                    $window.location.href = '/redirectpath';
                }
                else
                    alert('Login incorrect');
            });
        }
    }
})();
希望这会有所帮助。

答案 1 :(得分:0)

尝试使用$ state.go()而不是$location.path()

$scope.edit = function () {    
      $state.go('Appointment');    
}