Angular - ошибка разбиения на страницы на сервере в Angular 7 - PullRequest
2 голосов
/ 27 июня 2019

Я использую внешний интерфейс Angular 7 и внутренний интерфейс Laravel для создания приложения.Я хочу сделать пагинацию на стороне сервера на своих страницах, и я получил вдохновение от нумерации страниц

Laravel backend

 public function indexSmsmo()
{
    if(Auth::user()->id == 1)
        $smsmos = Smsmo::paginate(5);
    else 
    $smsmos = Smsmo::where('user_id',Auth::user()->id)->paginate(5);
    return $smsmos;      
}  

Как показано выше, я начал этоиз бэкэнда Laravel.Затем приступил к Angular

Angular:

модель: smsmo.ts

export class Smsmo {
id: number;
msisdn: string;
message: string;
short_code_called: string;
packaged_id: string;
error_message: string;
error_code: string;
telco: string;
user_id: number;

user?: User;
telcoId?: Telco;
package?: Package;

constructor() {}
}

Служба: smsmo.service.ts

// App import
import { Smsmo } from '../models/smsmo';
import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';
import { catchError } from 'rxjs/operators';
import { Ng4LoadingSpinnerService } from 'ng4-loading-spinner';
import { environment } from 'src/environments/environment.prod';
import { HttpErrorHandler, HandleError } from '../shared/_services/http-handle-error.service';
@Injectable({
  providedIn: 'root'
})

export class SmsmoService {

private readonly apiUrl = environment.apiUrl;
private smsmoUrl = this.apiUrl;
private handleError: HandleError;  

constructor(
private http: HttpClient,
httpErrorHandler: HttpErrorHandler ) {
  this.handleError = httpErrorHandler.createHandleError('SmsmoService');
}

/** GET smsmos from smsmos endpoint */
getSmsmos (page): Observable<Smsmo[]> {
return this.http.get<Smsmo[], page>(this.smsmoUrl + '/indexSmsmo')
.pipe(
  catchError(this.handleError('getSmsmos', []))
);
}

Вопроспочему у меня возникает ошибка красной линии в сервисе и как ее устранить.Я имею в виду, как мне интегрировать страницу в мой server.ts.Подробнее см. Диаграмму.

enter image description here

1 Ответ

0 голосов
/ 27 июня 2019

На мой взгляд, переменная page - это номер страницы, которую вы хотите со стороны сервера. Это не type/interface.

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

getSmsmos (page): Observable<Smsmo[]> {
return this.http.get<Smsmo[]>(this.smsmoUrl + '/' + page)
.pipe(
  catchError(this.handleError('getSmsmos', []))
);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...