0

所以我试图用一个简单的 ng-view 将一个部分包含在另一个部分中,但它抛出了这个错误:错误:[$rootScope:infdig] 10 $digest() 达到了迭代。中止!。我已经对此进行了一些研究,根据我所阅读的内容,这是由于在页面加载时尝试更改某些模型数据造成的。不过,我没有使用任何模型,我在这里尝试使用的唯一东西是 ng-include 本身。这是代码:

<section id = "content">
 <div ng-include = "template.url"></div>
</section>

在我的控制器文件中:

$scope.templates = [
  {'name' : 'partial2.html', 'url' : 'partial2.html'},
  {'name' : 'partial3.html', 'url' : 'partial3.html'}
];

$scope.template = $scope.templates[0];

我的 partial2.html 代码:

<form name = "frmSelect" id = "frmSelect" method = "post" class = "content-space">
 <select id="providers" name = "providers" class = "form-control" ng-model = "provider">
  <option>Account1</option>
  <option>Account2</option>
  <option>Account3</option>
  <option>Account4</option>
 </select>
</form> 

注意:我已经尝试删除 ng-model 但输出仍然相同。

对这个错误有什么想法吗?

4

1 回答 1

0

您应该为此使用一个函数:

在视图中:

<section id = "content">
  <div ng-include  src = "templateUrl()"></div>
</section>

控制器将是这样的:

$scope.templateUrl = function() {
   return  $scope.templates[0].url;
}

这是一个工作示例

于 2013-11-05T17:15:34.767 回答