gpt4 book ai didi

angularjs - 已达到 10 次 $digest() 迭代。中止!使用时 $locationProvider.html5Mode(true);

转载 作者:行者123 更新时间:2023-12-01 03:56:14 25 4
gpt4 key购买 nike

我在 IE8 上使用 angular.js .

我收到:"10 $digest() iterations reached. Aborting!"在我的 Controller 上使用“$locationProvider.html5Mode(true);”时出现运行时错误。

我的代码:

angular.module('MyApp', [], function ($routeProvider, $locationProvider) {    
$routeProvider.when('/Get', {
templateUrl: 'Template/T1.html',
controller: RouteCtrl
});
$routeProvider.when('/GetT2/T2', {
templateUrl: 'Template/T2.html',
controller: RouteCtrl
});

$locationProvider.html5Mode(true);
});


function MainCntl($scope, $route, $routeParams, $location) {
$scope.$route = $route;
$scope.$location = $location;
$scope.$routeParams = $routeParams;
$scope.$location.path('/Get');
}

function RouteCtrl($scope, $route) {
$scope.params = $route;
}

更新:

T1 和 T2 不包含任何与 Angular 相关的内容。

T1.html:
<h1>T1</h1>
<p>T1</p>

T2.html:
<h1>T2</h1>
<p>T2</p>

这是我使用 Controller 的地方:
<div id="content" ng-controller="MainCntl">          
<div ng-view></div>
</div>

最佳答案

我不知道这与您的问题有多相关,但我们也有相同的症状,同样来自 html5 模式。我们手动引导,并在此过程中添加 class="ng-app"到 html 元素。这导致运行两个 angular 实例,一个是我们配置的(启用 html5mode),另一个是默认设置。

所以这两个实例会争夺 $location 的内容。它永远不会达到平衡。

解决方案是确保 html 元素在我们手动引导时是“原始的”。

注:我们正在使用 require.js,它在元素的异步加载中变得尤为明显。

关于angularjs - 已达到 10 次 $digest() 迭代。中止!使用时 $locationProvider.html5Mode(true);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17146461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com