我有以下代码在android上可以正常运行,在iphone上可以使用chrome,在台式机上可以使用safari,但是在iphone上无法正常工作。页面永远不会改变,我使用警报来确定所有工作,直到$ location.path部分为止。

.success(function(data, status, headers, config) {

            stopLoading();
            console.log(data);
            if (data.Resp.startsWith("E")) {
                alert(checkErrorCodes(data.Resp));
            } else if (data.Resp === "OK") {

                localStorage.setItem("SessionKey", data.SessionKey);
                localStorage.setItem("Username", $scope.loginUsername);
                $scope.username = localStorage.getItem('Username');
                $location.path('/index');

            }


通过在线阅读,我还尝试了:

$location.path('/index');
$scope.apply();




$timeout(function() {
   $location.path('/index');
})




$scope.$apply(function() {
                   $location.path('/index');
                });


没有运气。最后一个打破了铬,说摘要已经在运行。

最佳答案

将您的$ location.path更改为此:

location.hash = "index";


有时哈希在我的应用程序中会失败。已经尝试在角度源中进行调试。还是不知道为什么。

无论如何,希望这对您有用。

关于javascript - $ location.Path未在iPhone上运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26716033/

10-08 20:49