как использовать ng-repeat в заголовке и теле, не влияя на производительность - PullRequest
0 голосов
/ 27 апреля 2020

После получения ответа от API, если я ищу какое-либо значение из ответа, на основе этого мне нужно отобразить значение в разделе заголовка и тела.

  • ) У меня есть поиск функциональность. Если я буду искать какие-либо записи, основываясь на этом, я собираюсь отобразить значение в заголовке и теле.

  • ) В части заголовка все работает нормально. Я написал две разные функции (две разные ng-repeat в html) для достижения этой цели. Так что мое приложение работает медленно.

  • ) Вместо этого, как я могу сделать только одну функцию для достижения этой цели.

Мой Часть заголовка:

<div class="header" ng-show="search">
<span ng-show="tag !=true" ng-repeat="tag in getTags() track by $index">{{tag.id}}<span>
</div>

Корпус:

<div ng-repeat="data in value | orderBy:'cardorder'" ng-show="resultShow(data)">
{{data.id}}
</div>

А мои js файлы,

$scope.resultShow = function(data) {
if ($scope.search) {
return $scope.search.split(' ').every(function(search) {
   return data.value.toLowerCase().indexOf(search.toLowerCase()) != -1;
});
} else {
return true;
}
}

В этом отобразятся все записи из API. Когда я в первый раз захожу на страницу поиска, она должна показывать все результаты. Так что это будет работать нормально.

И часть моего тела

$scope.getTags = function() {
return $scope.getAlldatas.filter(function(data) {
return $scope.search.split(' ').every(function(search) {
return data.value.toLowerCase().indexOf(search.toLowerCase()) != -1;
});
})
}
  • ) Я думаю, что из-за ng-repeat в HTML он не работает. Как я могу сделать только одну функцию вместо двух.

Мои требования:

  • ) Первый раз после загрузки страницы или первый Время входа в вкладку поиска, мне нужно отобразить все записи. Я могу получить все записи в "$ scope.getAlldatas".

  • ) После этого, если я введу любое ключевое слово, например, "биологическое", оно отобразит только две записи.

  • ) Данные заголовка и основной части заполнены правильно. Но, получив две записи, я могу нажать на любую информацию. Например, значением является «Биологическая новая область» и «Биологические записи». Если я нажму «Биологические записи», она будет go на этой конкретной странице биологических записей.

  • ) После этого, если я нажму Кнопка возврата браузера , должно отобразиться те же две записи ранее, что я искал. Но вместо этого, в части заголовка он показывает только две записи. Это правильно. Но в разделе тела, он отображает все записи . Но мне нужно показать только две записи, что он отображал в шапке.

Может кто-нибудь поделиться со мной, как это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...