Сортировать репозитории по количеству звезд, используя github.api и угловые - PullRequest
0 голосов
/ 24 мая 2019

Я ищу способ заказать репозитории, показанные звездочками, используя угловые

я пытался добавить пусть репо репо | OrderBy

но не работает

<div class="panel panel-default">
  <div class="panel-heading">
        <h3 class="panel-title">Repos</h3>
  </div>
  <div class="panel-body" *ngFor="let repo of repos">
        <p class="clearfix">
            <span class="repo-title">{{repo.name}}</span>
            <a href="{{repo.html_url}}" class="btn btn-sm btn-warning pull-right" 
               target="_blank">Veja este projeto no Github</a>
        </p>
       <p>{{repo.description}}</p>
       <p><img class="star" src="../../../assets/img/star.png" alt="">{{repo.stargazers_count}}</p>
  </div>
</div>

1 Ответ

0 голосов
/ 24 мая 2019

В отличие от AngularJS, Angular 2+ не предоставляет orderBy каналов для фильтрации и сортировки списков, поскольку они плохо работают и предотвращают агрессивное минимизацию (ссылка: https://angular.io/guide/pipes#appendix-no-filterpipe-or-orderbypipe)

Вместо этого вы можете отсортировать данные в вашем компоненте, используя метод Array sort().

Сортировка репозиториев по звездам в порядке возрастания:

this.repos.sort((a, b) => {
    return a.stargazers_count - b.stargazers_count;
});

Аналогично, для сортировки репозиториев по звездам в порядке убывания:

this.repos.sort((a, b) => {
    return b.stargazers_count - a.stargazers_count;
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...