Javascript 角度路由导致IE中的无限循环

Javascript 角度路由导致IE中的无限循环,javascript,angularjs,internet-explorer-8,Javascript,Angularjs,Internet Explorer 8,当我在InternetExplorer10中查看我的代码时,我收到以下错误(它不一定以标准模式呈现,这是我无法控制的,因为页面的服务方式) 以下是我使用的路由: phoneApp.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){ $routeProvider .when('/sap.com~home~phonelist/pages/ind

当我在InternetExplorer10中查看我的代码时,我收到以下错误(它不一定以标准模式呈现,这是我无法控制的,因为页面的服务方式)

以下是我使用的路由:

phoneApp.config(['$routeProvider', '$locationProvider',
  function($routeProvider, $locationProvider){
    $routeProvider
      .when('/sap.com~home~phonelist/pages/index.html', {
        templateUrl: '/sap.com~home~phonelist/pages/landing.html',
        controller: 'SearchController'
      })
      .when('/sap.com~home~phonelist/pages/', {
        templateUrl: '/sap.com~home~phonelist/pages/landing.html',
        controller: 'SearchController'
      })
      .when('/sap.com~home~phonelist/pages/singleEmployee/:id', {
        templateUrl: '/sap.com~home~phonelist/pages/singleEmployee.html',
        controller: 'SingleEmployeeController'

      });

      $locationProvider.html5Mode(true);
  }]);
我的索引中的基本href:
也是页面中唯一重复的内容:

<tr ng-repeat="employee in filteredEmployees = (employees | filter:search.currentFilter | orderBy:user.ordering:reverse)">
    <td> <a class="fakeLink" href="singleEmployee/{{$index}}">{{ employee.name }}</a></td>
    <td class="location">{{ employee.userID }}</td>
    <td class="district">{{ employee.department }}</td>
    <td class="jobTitle">{{ employee.jobTitle }}</td>
    <td class="emailAddress">{{ employee.email }}</td>
    <td class="workPhone"><a class="fakeLink" href="tel:{{employee.phone}}">{{ employee.phone }}</a></td>
</tr>

{{employee.userID}
{{employee.department}
{{employee.jobTitle}
{{employee.email}

该页面在Chrome中加载良好,但当我尝试在IE中打开它时,不会加载任何内容。我已经在ng repeat上检查了我的html,以确保我没有调用创建新数组的方法。当我使用开发人员工具检查时,基本href似乎被无休止地调用。您认为是什么导致了此错误?

这是两个问题的组合。第一,改变

$locationProvider.html5Mode(true);


Betty在评论中的观点是正确的,IE在旧版本中使用它有一个问题。除此之外,您只需为
/
创建一条新路线。如果角度布线出现问题,除了在设置布线时调用
之外,还可以调用
。有关这种布线方式的更多信息,请参阅。

这是两个问题的组合。第一,改变

$locationProvider.html5Mode(true);


Betty在评论中的观点是正确的,IE在旧版本中使用它有一个问题。除此之外,您只需为
/
创建一条新路线。如果角度布线出现问题,除了在设置布线时调用
之外,还可以调用
。在.

我认为
$locationProvider.html5Mode(true)中有更多关于这种路由方式的信息就是问题所在!如果将其设置为
false
,它是否有效?您可能需要像
$locationProvider.html5Mode(true).hashPrefix(“!”)那样使用
hasPrefix
ie8&ie9@BettySt将其更改为false不起作用,在chrome@pankajparkar中添加
hashprefix(
!`)会破坏它。您的意思是将其更改为
false
?坏消息。IE9不支持HTML5历史API。这就是HTML5模式使用的角度。如果你需要你的应用程序在IE9上运行,你需要切换回来,@see I think
$locationProvider.html5Mode(true)就是问题所在!如果将其设置为
false
,它是否有效?您可能需要像
$locationProvider.html5Mode(true).hashPrefix(“!”)那样使用
hasPrefix
ie8&ie9@BettySt将其更改为false不起作用,在chrome@pankajparkar中添加
hashprefix(
!`)会破坏它。您的意思是将其更改为
false
?坏消息。IE9不支持HTML5历史API。这就是HTML5模式使用的角度。如果你需要你的应用程序在IE9上运行,你需要切换回来,@see I think
$locationProvider.html5Mode(true)就是问题所在!如果将其设置为
false
,它是否有效?您可能需要像
$locationProvider.html5Mode(true).hashPrefix(“!”)那样使用
hasPrefix
ie8&ie9@BettySt将其更改为false不起作用,在chrome@pankajparkar中添加
hashprefix(
!`)会破坏它。您的意思是将其更改为
false
?坏消息。IE9不支持HTML5历史API。这就是HTML5模式使用的角度。如果你需要你的应用程序在IE9上运行,你需要切换回来,@see