最近,我开始研究angular.js。我现在设法将它集成到一个rails应用程序中,但角度不能正常工作。
这意味着,它经常重复一个对象。可以说,我有一个带有2个JSON的数组,我想重复每一个json.comment。当我有2个jsons时,我会得到每次评论两次,如果我有3个,我会得到每次评论三次。这是代码:
var logbookApp = angular.module("logbookApp",[]);
logbookApp.controller("LogbookCtrl", function($scope){
$scope.entries = [
{comment: "One"},
{comment: "Two"},
{comment: "Three"}
];
});
这是标记:
<html ng-app="logbookApp">
<body ng-controller="LogbookCtrl">
<div class="view-container">
<div ng-view class="view-frame"></div>
<ul>
<li ng-repeat="entry in entries">
{{entry.comment}}
</li>
</ul>
<%= yield %>
</div>
</body>
</html>
我的错误在哪里?
答案 0 :(得分:3)
由于这似乎解决了这个问题,我将在以后添加一个完整的答案,以帮助那些绊倒这个问题的人:
当角度库被包含多次时, ng-repeat
可以创建多余的重复项。根据我的简短测试,我希望在重复中有 n ^ a 项目显示 n 项目,并包含 a 版本的角度在页面中。
我猜这是因为第一个角度包含正确地处理了初始元素上的ng-repeat
指令。随后的包含然后重新处理仍然存在于每个重复项目上的指令。