В проекте всегда есть проблема: после ввода ключевых слов в строку поиска (см. Рисунок 1), согласно установленной бизнес -логике, должно быть, что после получения сервера запрос сначала вернет первые 7 части данных в запросе. Когда клиент, по -видимому, загружается, продолжайте искать другие 7 части данных. Но реальная ситуация неопределенна. На консоли сервера (см. Рисунок 2) вы можете увидеть Begno до 126, что эквивалентно клиенту, запрашивающему 127 раз на сервере, что является невыносимым результатом.
Рисунок 1 строка поиска клиента
Рисунок 2 Консоль сервера
Можно сделать вывод, что есть проблема с бизнес -логикой клиента. Вернитесь к клиенту, просмотрите логику исходного кода и измените ее следующим образом:
Контроллер
$ scope.medsearchmore = function () {console.log ("подтягивающая нагрузка ......" + isfinied); if (isfinished == 0) {begin += pcnt; var data = {"begno": begin, // начало номера "pagenum": pagenum, // возвращаемый номер на страницу "searchby": searchby}; if (searchtype == 1) {data.classid = searchKey; console.log (data.classid); // ------- 1 AppCallServer ($ http, "9002", data, function (data) {console.log ("выпадает, чтобы обновить результаты запроса rootcope.med:"+json.strify (data.data)); для (var i = 0; i <data.pcnt; i++щет // Состояние обновления закончено с помощью данных. $ timeout (function () {$ ionicloading.hide ();}, 1200); }} else {// препарат был запросил $ scope.nomore = true; } $ timeout (function () {$ scope. $ broadcast ('scroll.infinitescrollcomplete');}, 1200); };вид
<!-Когда пользователь достигает нижнего колонтитула или рядом с нижним колонтитулом, директива ион-инфинит-скрулл позволяет вам вызвать функцию. Когда пользователь прокручивается за пределами контента внизу, указанный ONFINITE будет запускаться-> <!-Когда больше загрузки данных, вы можете использовать простой метод для предотвращения бесконечной прокрутки, то есть угловой NG-IF Directive-> <!-Установите первоначальное значение номинации на True, и первый раз, когда вы нажмите на классификацию, не вытягивает нагрузку-> (не выпускает. on-infinite = "medsearchmore ()" Distance = "0,01%" icon = "Ion-Loading-C"> </Ion-Infinite-Scroll> <div ng-if = "nomore" align = "center"> <p> больше нет лекарств </p> </div>
После приведенных выше модификаций можно избежать ненужных запросов.