Я так и делаю.
Это мои service.ts
настройки.
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Observable } from 'rxjs';
Импортируйте HttpClient
и HttpHeaders
, а затем установите их, как показано ниже
accessToken;
apiUrl = environment.apiUrl; // Url Reads http://my-api.com
// Only Needed if you have headers
headers = new HttpHeaders()
.set('Authorization', this.accessToken);
constructor(
private http: HttpClient
) { }
getMyData(): Observable<any> {
return this.http.get(
this.apiUrl + '/my-data', // Url Reads http://my-api.com/my-data
{headers: this.headers} // Include Headers If needed
);
}
Тогда внутри моего compoinent.ts
файла выглядят так.
import { MyService } from '../../services/my.service';
...
data;
...
constructor(
...
private myService: MyService
...
) { }
async ngOnInit() {
try {
await this.getData();
} catch (error) {
console.log(error);
}
this.loaded = true;
}
async getData() {
this.data = await this.getMyData();
}
// Get the Data
getMyData() {
return new Promise((resolve, reject) => {
this.myService.getMyData()
.subscribe(
data => {
resolve(data);
}, err => {
reject(err);
}
);
});
}