Angularjs ngRepeat through Array,隐藏其他数组并使用next/previous显示

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

我有一个api,它有8个数组对象,可以很好地显示,但我的角度代码不会一次隐藏或显示一个数组。这只是一个测试代码,稍后将分离出来。这些按钮可以工作,因为当我点击它时,我可以看到索引上下移动,但它仍然显示整个列表

<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];
}