Я сейчас изучаю Angular.Я создал приложение на этом языке на коммерческой основе.Я сделал что-то не так, потому что у меня плохое количество страницК сожалению, я не знаю, где я допустил ошибку.Что я должен улучшить в своем коде?Пожалуйста, помогите.
Мой код:
import { Component, OnInit } from '@angular/core';
import { CompanyService } from './../services/company.service';
import { NgbPaginationConfig } from '@ng-bootstrap/ng-bootstrap';
import { HttpClient, HttpErrorResponse } from '@angular/common/http';
import { IPage } from './../services/page';
import { Observable } from 'rxjs';
import { Router } from '@angular/router';
import { RouterModule, Routes } from '@angular/router';
import { ActivatedRoute } from "@angular/router";
@Component({
selector: 'app-company-profile',
templateUrl: './company-profile.component.html',
styleUrls: ['./company-profile.component.css']
})
export class CompanyProfileComponent implements OnInit {
public company = [];
public errorMsg;
page;
numberOfPage;
numberOfPageTMP;
pageSize;
private _url;
constructor(private _companyService: CompanyService, config: NgbPaginationConfig, private http: HttpClient, private router: Router, private route: ActivatedRoute) {
this.page = Number(this.route.snapshot.paramMap.get("page"))
this.router.routeReuseStrategy.shouldReuseRoute = () => false;
}
ngOnInit() {
this.page = Number(this.route.snapshot.paramMap.get("page"))
this.getCompany2(this.page)
.subscribe(data => {
this.company = [data]
this.numberOfPage = this.company[0].numberOfPage;
this.pageSize = this.company[0].pageSize;
},
error => this.errorMsg = error);
}
pageChange(page) {
this.router.navigate(['companies/' + page]);
}
url2(page) {
//api/company?page=1&language=pl"
return "http://localhost:4200/api/company?page=" + page + "&language=pl";
}
getCompany2(page): Observable<IPage> {
return this.http.get<IPage>(this.url2(page));
}
errorHandler(error: HttpErrorResponse) {
return Observable.throw(error.message || "Server Error");
}
}
и HTML-код:
<code> <ngb-pagination [collectionSize]="numberOfPage*10" [(page)]="page" [maxSize]="5" [rotate]="true" [boundaryLinks]="true" (pageChange)="pageChange(page)"></ngb-pagination>
<pre>Current page: {{page}}
dsdsddsds: {{collectionSize}} dsdsddsds: {{company [0] .numberOfPage}} sru: {{numberOfPage}}