Повторяющиеся строки фильтра AngularJS, заканчивающиеся буквой G - PullRequest
0 голосов
/ 08 мая 2019

У меня есть приложение AngularJS, и мне нужно отобразить свойства объекта, которые заканчиваются буквой G на одной строке, а свойства без G на другой:

<div class="col"><strong>Grass</strong>
  <span ng-repeat="(key, value) in player.ranking" ng- 
  filter="value.endsWith('G') = true">
  <span class="text-success">{{key.replace('Pool', '')}} {{value}}<span ng- 
  if="!$last">, &nbsp;</span></span></span>
</div>
<div class="col"><strong>Beach:</strong>
  <span ng-repeat="(key, value) in player.ranking" ng- 
  filter="!value.endsWith('G')">
  <span class="text-warning">{{key.replace('Pool', '')}} {{value}}<span ng- 
  if="!$last">,&nbsp; </span></span>
  </span>
</div>

То, что у меня есть, не работает. Может ли кто-нибудь помочь мне?

1 Ответ

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

Я не уверен, откуда вы взяли атрибут ng-filter. Однако это недопустимый фильтр для ng-repeat в AngularJS .

Правильный формат:

item in items | filter:searchText

В вашем HTML это выглядит примерно так:

 <ul ng-repeat="item in items | filter:query ">
      <li>{{item.name}}</li>
    </ul>

Так что самым быстрым решением вашей проблемы является использование функции фильтра

HTML

 <ul ng-repeat="item in items |
      filter: filterFunction ">
      <li>{{friend.name}} ({{friend.age}})</li>
    </ul>

JS

  $scope.filterFunction = function(value) {
      return value.endsWith('G');
    };
...