Services berisi logic bisnis, dan Dependency Injection menyediakannya ke komponen.
Membuat Service
@Injectable({ providedIn: "root" })
export class DataService {
private items: string[] = []
getItems(): string[] {
return this.items
}
addItem(item: string): void {
this.items.push(item)
}
}
Menggunakan Service
@Component({
template: `
@for (item of items; track $index) {
<p>{{ item }}</p>
}
`,
})
export class ListComponent {
items: string[]
constructor(private dataService: DataService) {
this.items = this.dataService.getItems()
}
}
providedIn: "root" menjadikan service singleton di seluruh aplikasi.