ионная прокрутка с возможностью выбора переходит в начало при загрузке данных новой страницы

#javascript #ionic-framework

Вопрос:

Я использую функцию с возможностью выбора ионной с функцией бесконечной прокрутки, проблема, с которой я сталкиваюсь, заключается в загрузке новых данных страницы, прокрутка с возможностью выбора ионной перемещается наверх. Этого не должно быть, пользователь должен увидеть появление новых элементов и продолжить прокрутку в обычном режиме.

     <ion-item lines="none">
          <ionic-selectable #nationalityRef closeButtonSlot="end" formControlName="nationalities"
                  [items]="nationalities?.data" itemValueField="id" itemTextField="nationality" [canSearch]="true"
                  [searchPlaceholder]="'Profile.Form.Nationality' | translate" [hasInfiniteScroll]="true"
                  (onSearch)="searchThroughRecords($event, natl, false, 'nationality')"
                  (onInfiniteScroll)="infinitescroll($event, natl, true)" class="v2"
                  (onClose)="selectClosed(nationalityRef)">
                  <ng-template ionicSelectableTitleTemplate>
                    {{'Profile.Form.Nationality' | translate}}
                  </ng-template>
                  <ng-template ionicSelectableCloseButtonTemplate>
                    <ion-icon src="../../../assets/icon/close.svg"></ion-icon>
                  </ng-template>
                </ionic-selectable>
    </ion-item>
 

и код класса:

 
    infinitescroll(event, record: PaginatedResponse < any >, fn: CallableFunction, type ?: string, index ?: number) {
        const text = (event.text || '').trim().toLowerCase();
        // There're no more ports - disable infinite scroll.
        if (record.meta.current_page > record.meta.last_page) {
            event.component.disableInfiniteScroll();
            return;
        }
    
        const payload: any = {
            per_page: NationalityPerPage, page: record.meta.current_page, sort: 'title',
            direction: 'asc', nationality_id: null
        };
    
        fn(payload).subscribe((items: PaginatedResponse<NationalitiesModel>) => {
            record.data = event.component.items.concat(items.data);
            event.component.items = record.data;
            event.component.endInfiniteScroll();
            record.meta.current_page  ;
        });
    }