Teenuse loomine Angularis
Alustame teenuste õppimist oma enda loomisega.
Selleks kaustas
test/src/app teeme faili
data.service.ts. Olgu meie teenus
vastutav mõnede andmete kuvamise eest
ekraanile.
Teeme oma teenusele klassi:
export class DataService {
}
Nüüd vajame dekoraatorit Injectable.
Selle kasutamine võimaldab seda, et
teenuseklassi saab süstida
komponendi klassi. Süstimisest räägime
järgmisel õppetunnil. Praegu impordime
vajaliku dekoraatori:
import { Injectable } from '@angular/core';
export class DataService {
}
Rakendame seda oma klassile:
import { Injectable } from '@angular/core';
@Injectable()
export class DataService {
}
Teeme nüüd nii, et meie klassis oleks mõned andmed. Tavaliselt Angulari rakendustes laaditakse andmed serverist, kuid me õppe-eesmärkidel kasutame massiivi. Teeme selle privaatsesse omadusse:
export class DataService {
private data: string[] = ['a', 'b', 'c'];
}
Kirjutame nüüd meetodi andmete saamiseks:
export class DataService {
private data: string[] = ['a', 'b', 'c'];
getData(): string[] {
return this.data;
}
}
Meie teenus on valmis. Järgmisel tunnil me ühendame selle komponendi klassiga.
Looge oma teenus, mis tagastab objektide massiivi toodetega:
[
{
name: 'prod1',
cost: 100,
},
{
name: 'prod2',
cost: 200,
},
{
name: 'prod3',
cost: 300,
},
]