在Angular(Ionic)中订购JSON数据

时间:2016-11-08 14:05:08

标签: angularjs json ionic-framework ng-repeat

我需要帮助在ng-repeat中订购JSON。我想按item.id(从最高到最低)订购我的数据。我尝试过很多关于互联网的提示,但也许我只是做错了,因为它们都没有为我工作......我的代码:

$http.get('http://jastrzebieonline.pl/drogi/data/najnowsze.php')
   .success(function(res){
     $scope.news = res;
     console.log("Ok");
    })
   .error(function(data, status) {
     console.log("Error");
})

<div ng-repeat="item in news">
    <a href="{{ item.id }}">
      <img src="{{ item.image }}">
      <h2>{{ item.title }}</h2>
      <p>{{ item.date }}</p>
      <p>{{ item.text }}</p>
    </div>
    </a>
 </div>

2 个答案:

答案 0 :(得分:1)

您可以使用orderBy过滤器:

<div ng-repeat="item in news | orderBy:'id'">
    <a href="{{ item.id }}">
      <img src="{{ item.image }}">
      <h2>{{ item.title }}</h2>
      <p>{{ item.date }}</p>
      <p>{{ item.text }}</p>
    </div>
    </a>
 </div>

答案 1 :(得分:0)

您可以使用“orderBy”过滤器来完成这项工作。

顺便说一下,你应该使用'ngHref'和'ngSrc'指令代替原来的'href'和'src'属性。

<div ng-repeat="item in news | orderBy:'id':true">
    <a ng-href="{{ item.id }}">
      <img ng-src="{{ item.image }}">
      <h2>{{ item.title }}</h2>
      <p>{{ item.date }}</p>
      <p>{{ item.text }}</p>
    </div>
    </a>
 </div>

参考:

https://docs.angularjs.org/api/ng/filter/orderBy

https://docs.angularjs.org/guide/filter