我正在尝试用angular.js重复列表中包含html数据。我想用ngInfiniteScroll。
因此,我构建了一个模板,如下所示。
更新:
<div class="scroll" id="antTalkList" talk-type="total" view-type="total"
infinite-scroll='$ctrl.loadMore()' infinite-scroll-distance='2'>
<ul class="user_list list ng-scope" ng-repeat="item in $ctrl.htmlViews">
<ng-bind-html ng-bind-html="item"> </ng-bind-html>
</ul>
</div>正如你在上面看到的,我不知道如何在ul中重复$ctrl.htmlViews。每个htmlViews的项目都填充了上面的HTML数据。
<li ... > ... </li> ... <li ... > ... </li>
这是我的antList组件。在控制器中,当控制器初始化和滚动时,通过ajax调用来推送htmlViews (loadMore函数)。
ng-repeat看起来不错,也许它工作得很好。但是,infinite-scroll不工作。我添加了infinite-scroll="$ctrl.loadMore()"和infinite-scroll-distance='10'。
LoadMore函数在初始化时被调用,但它不会在我滚动时调用。这个箱子怎么托运?
这是我的组件片段。
.component('antList', {
templateUrl : 'templates/ant-list.html'
, controller : function AntListController($http, $attrs, $sce){
var self = this;
this.htmlViews = [];
this.loading = false;
$http({
method : "GET",
url : "ant/list?sectionId="+$attrs.talkType+"&pageCount=20&startIndex=0"
}).then(function mySucces(response) {
self.htmlViews.push($sce.trustAsHtml(response.data));
});
this.loadMore = function(){
$http({
method : "GET",
url : 'ant/list?pageCount=20&startIndex='
+ $('#antTalkList .user_list li').size()
+ '§ionId=' +$attrs.talkType
}).then(function mySucces(response) {
self.htmlViews.push($sce.trustAsHtml(response.data));
});
}
}
})发布于 2016-08-30 20:58:23
<div class="scroll" id="antTalkList" talk-type="total" view-type="total"
infinite-scroll='loadMore()' infinite-scroll-distance='2'>
<ul class="user_list list ng-scope">
<li ng-repeat="view in htmlViews">
{{view}}
</li>
</ul>
</div>https://stackoverflow.com/questions/39228064
复制相似问题