我正在尝试使用包含ng-include的ng重复.问题是ng-repeat中的第一个元素只是ng-include模板,没有填写ng重复的数据.有没有办法我可以以某种方式绑定ng-include的模板,以便它工作在第一个ng重复?
<div ng-repeat="item in items"> <div ng-include src="'views/template.html'"></div> </div>
例如,如果我的ng-repeat包含10个项目,那么渲染的第一个项目将只是空模板.项目2-10将按原样呈现.我究竟做错了什么?
首先确保包含在项目的第一个索引中的数据实际上具有所需的数据.
原文链接:https://www.f2er.com/angularjs/140840.html您的问题的一个可能的解决方案是简单地不显示ng-repeat的第一个索引:
<div ng-repeat="item in items" ng-show="!$first"> <div ng-include src="'views/template.html'"></div> </div>
这可能不会解决您的问题的根源,但它仍然可能使您的应用程序更像您期望的工作.
另一个可能的解决方案:
<div ng-repeat="item in items" ng-include="'views/template.html'"></div>
见这里的例子:
http://plnkr.co/edit/Yvd73HiFS8dXvpvpEeFu?p=preview
一个可能的修复只是为了很好的措施:
使用组件:
HTML:
<div ng-repeat="item in items"> <my-include></my-include> </div>
JS:
angular.module("app").directive("myInclude",function() { return { restrict: "E",templateUrl: "/views/template.html" } })