$ scope不在函数内部工作

时间:2015-10-01 18:50:52

标签: javascript angularjs pug ng-show

我有以下代码。我在html上使用ng-show并尝试在角度函数上操作它,但它不起作用。我不确定在函数内更改$ scope值的正确方法。

On Angular,

GOdict = {'mainID1': set([GOTERM1, GOTERM2]), 'mainID2': set([GOTERM1, GOTERM3])}

在玉上,我有

app.controller("ControlController", function($scope, $http, $location) {

    $scope.badRequest = false;

    $scope.login = function() {

        $http.post('/login', { 

            email: $scope.email,

            password: $scope.password

            }).then function(res) {

                $location.path('/');

            },function(err) {

                 $scope.badRequest = true;

                 console.log($scope.badRequest); // this will print true.

                 //But this  does not change the $scope.badRequest on DOM. 

            });

      };

});

有任何帮助吗?

1 个答案:

答案 0 :(得分:1)

不确定是否只是因为你错误地复制了它,但是"。然后"是一个函数调用。它应该是

$scope.login = function() {
    $http.post('/login', { 
        email: $scope.email,
        password: $scope.password
    })
    .then(function(data) {
        // do stuff in here with successfully returned data
    })
    .catch(function(err) {
        $scope.badRequest = true;
    });
};

你拥有它的方式,.then甚至没有被调用。此外,当我按原样运行它时,我遇到了语法错误。你没有得到那些吗?