Parse.com + AngularJS ngRoute - 登录路线

时间:2016-01-15 22:00:35

标签: javascript angularjs parse-platform

我希望我的SPA在登录后将用户重定向到 / home 。首先点击Log In登录用户。第二次点击 - 重定向。但是一切都应该在第一次点击时发生。

如果我删除 User.logIn()代码并承诺,重定向将首次运行。那是为什么?

myApp.controller('loginController', ['$scope', '$location', function($scope, $location) {
    $scope.message = 'Login page!';        
    $scope.update = function(usr) {
        User.logIn(usr.name, usr.password)
        .then(function() {
            $location.path('/home');
        }, function(err) {
            alert(err.message);
        })}
}]);

按钮代码:

<button ng-click="update(usr)">Log In</button>

我尝试将 $ location 代码放在另一个然后 - 操作中(以防万一)但是它没有用。

修改 我有点工作了。不完全是你的建议,但你给了我一个主意。不过,我现在正在阅读AngularJS中的事件。并且看看我是否最终可以提出更接近你想法的东西 - 有了承诺。

$scope.goHome = function() {
    $location.path('/home');
};

按钮:

<button ng-click="goHome()" ng-mousedown="update(usr)">Log In</button>

编辑2: 如果有人遇到同样的问题,我刚刚发现了2个问题。第一个解释了为什么重新路由在Parse承诺中不起作用以及如何使其工作,第二个也有用的信息:

AngularJS $location.path doesn't work on Parse Promise

$location.path doesn't change in a factory with AngularJS

0 个答案:

没有答案