Angularjs ngRepeat through Array,隐藏其他数组并使用next/previous显示
我有一个api,它有8个数组对象,可以很好地显示,但我的角度代码不会一次隐藏或显示一个数组。这只是一个测试代码,稍后将分离出来。这些按钮可以工作,因为当我点击它时,我可以看到索引上下移动,但它仍然显示整个列表Angularjs ngRepeat through Array,隐藏其他数组并使用next/previous显示,angularjs,Angularjs,我有一个api,它有8个数组对象,可以很好地显示,但我的角度代码不会一次隐藏或显示一个数组。这只是一个测试代码,稍后将分离出来。这些按钮可以工作,因为当我点击它时,我可以看到索引上下移动,但它仍然显示整个列表 <div class="col-md-2-4" ng-class="{'filenum-hide': index > $index + 1}"> <ul> <li class="clearfix" ng-repeat
<div class="col-md-2-4"
ng-class="{'filenum-hide': index > $index + 1}">
<ul>
<li class="clearfix" ng-repeat="a in complaints">
<div class="pull-left">
{{a.FileNum}}
</div>
</li>
</ul>
</div>
<div>
<button type="button" class="btn btn-next" ng-click="index = index < complaints.length ? index + 1 : complaints.length">Next</button>
<button type="button" class="btn btn-pre" ng-click="index = index > 1 ? index - 1 : 1">Previous</button>
{{index}}
</div>
-
{{a.FileNum}}
下一个
以前的
{{index}}
我的结果是这样的,但我只希望有一个列表遍历数组,只显示case1,然后单击next,它将显示cw1dpd,等等
对console.log(数据)的响应(很抱歉,我还没有弄清楚如何以一种可以看到嵌套对象的好格式记录angular.toJson,所以我快照了控制台日志)
显示$scope.comp=$scope.comp[0]时出错;
你可以试试
<!-- You can set up another if -->
<div class="pull-left" ng-show='$index > 10 && a.somevalue = "ABC" '>
{{a.FileNum}}
</div>
{{a.FileNum}}
希望对你有帮助。这是一把小提琴-。据我所知,您只需要显示数组中的一个元素,然后单击“下一步”显示下一个元素,然后单击“上一步”显示上一个元素
我只渲染单个元素FileNum
,通过调用getNext()
和getPrevious()
函数来渲染下一个和上一个元素
模板:
<ul>
<li class="clearfix">
<div class="pull-left">
{{complaints.FileNum}}
</div>
</li>
</ul>
<button type="button" class="btn btn-pre" ng-disabled="index == 0" ng-click="getPrevious()">Previous</button>
<button type="button" class="btn btn-pre" ng-disabled="index == items.length - 1" ng-click="getNext()">Next</button>
希望这有帮助。你能发布JSON吗?@Sabarishsentilnathan,我发布了一个数组的console.log,因为JSON api看起来非常混乱。这不起作用,因为它隐藏了超过10个字符的所有内容。我只希望有一个列表可以遍历数组,只显示case1,然后单击next,它将显示cw1dpd等。这是一个示例,您可以尝试适合您需要的东西。这很漂亮。我将在上午试一试。如果我想添加一个搜索框直接转到filenum,我会创建一个$scope.search(filenum),将它附加到一个按钮上。如何将非索引值设置为$scope.items(这是一个参数)?您可能希望使用过滤器,类似于$scope.item=$filter('filter')($scope.items,{FileNum:'case2'})代码>。更新小提琴-太棒了。我将用搜索框中指定的参数替换case2。非常感谢。我急于尝试。嗨,Sabarish,我很难理解或翻译控制器中的$scope.items。我知道我的控制器可以工作,因为当我使用ng repeat时,它允许我通过列表进行渲染。如果我创建了另一个div,比如js fiddle中的div,我会尝试在没有ng repeat的情况下呈现{{{complaints.FileNum}},但什么都没有显示。我计划设置索引,然后执行$scope.complaints=$scope.complaints[0],因为我已经通过服务提取了数据。我有什么遗漏吗?
$scope.index = 0;
$scope.complaints = $scope.items[0];
$scope.getNext = function (){
$scope.index = $scope.index + 1;
$scope.complaints = $scope.items[$scope.index];
}
$scope.getPrevious = function (){
$scope.index = $scope.index - 1;
$scope.complaints = $scope.items[$scope.index];
}