Angular 2 came out with async-await feature, async function is called when callback functions are used which return promise. The async will either return value and the promise return that value, or it will return an exception and the promise get rejected.
Let’s see how to use async-await in Angular 2+
An async has await expression, await creates an understanding between async and promise and holds async function to wait till the promise is return. As soon as promise return the value the async function gets executed. By using await expression you overcome using addition setTimeout() function inside you promise.
Example:
src/bitcoinPrice.service.ts
import { Injectable } from ‘@angular/core’;
import { Http } from ‘@angular/http’;
@Injectable()
export class BitcoinPriceService {
private bitcoinRateUrl = ‘http://api.coindesk.com/v1/bpi/currentprice.json’;
constructor(private http: Http) { }
async getPrice(currency: string): Promise {
const response = await this.http.get(this.bitcoinRateUrl ).toPromise();
return response.json().bpi[currency].rate;
}
}
src/bitcoinPrice.component.ts
import { Component, OnInit } from ‘@angular/core’;
import { BitcoinPriceService } from ‘./bitcoinPrice.service’;
@Component({
selector: ‘my-app’,
template: ‘1 BTC = {{ price | currency:”USD” }}’
})
export class BitcoinPriceComponent implements OnInit {
price: number; constructor(private priceService: BitcoinPriceService ) { }
async ngOnInit() {
this.price = await this.priceService.getPrice(this.currency);
}
}
Above example shows how to use async function await expression in Angular 2+ project
You might also like
Stay ahead in tech with Sunflower Lab’s curated blogs, sorted by technology type. From AI to Digital Products, explore cutting-edge developments in our insightful, categorized collection. Dive in and stay informed about the ever-evolving digital landscape with Sunflower Lab.