Skip to content
This repository was archived by the owner on Apr 12, 2024. It is now read-only.
This repository was archived by the owner on Apr 12, 2024. It is now read-only.

$http.get in one instance not firing in IE10 #2442

@ThatRendle

Description

@ThatRendle

Using 1.1.4, I'm getting some peculiar behavior with a call to $http.get from a callback in IE10. It appears to be related to the evalAsync and nextTick and the serverRequest function not being called as part of a digest. It's fine in Chrome and Firefox (latest of both), and it's fine in IE10 in AngularJS 1.1.3. Oh, and all the other $http.get calls in the application work fine in IE10, it's just this one that's borked.

Code sample below, $scope.login is called from an ng-click directive on an HTML button.

function processLogin(response) {
    $http.get("/xxxxxxxx", { 
        params: { accesstoken: response.session.access_token } 
    })
    .success(function(data) {
        $rootScope.foo = data.foo;
        redirect();
    })
    .error(function(data, status) {
        $window.alert("Error: " + status);
    });

    // Adding this makes it work in IE10
    if (!$scope.$$phase) {
        $scope.$digest();
    }
}

$scope.login = function() {
    $scope.loggingIn = true;
    WL.login({ scope: ["wl.signin", "wl.emails"] }).then(
        function (response) {
            processLogin(response);
        });
};

I see that there have been a lot of changes to the $http code from 1.1.3 to 1.1.4, but I'm not familiar enough with the code to see what might have broken in IE10.

BTW, this applies to IE10 on Windows 7 and 8.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions