⊗jsagPmSvUs 76 of 97 menu

Gebruik van 'n diens in Angular

In die vorige les het ons ons eie diens DataService geskep. Kom ons voer dit nou in die komponent in:

import { Component } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { DataService } from './data.service'; // hier

In die dekorateur @Component moet ons ons diens in die eienskap providers spesifiseer:

@Component({ ..... providers: [ DataService ] // hier })

Nou sal ons 'n spesiale benadering gebruik, genoem afhanklikheidsinplasing (dependency injection). Die kern daarvan is dat ons in die konstruktor van die komponent ons diens as 'n parameter kan deurgee en dit sal outomaties in die private eienskap van ons komponent beland. Kyk in die kode:

export class AppComponent { constructor(private dataService: DataService) { // plaas afhanklikheid in console.log(this.dataService); // diens in private eienskap } }

Inplasing vir ons diens werk, aangesien ons vroeër die dekorateur Injectable daarop toegepas het.

Kom ons kry nou data van ons diens in die konstruktor van die komponentklas deur die ooreenstemmende metode te roep:

export class AppComponent { public data: string[] = []; constructor(private dataService: DataService) { this.data = this.dataService.getData(); } }

Kom ons vertoon die verkryde data in die templaat van die komponent:

<ol> <li *ngFor="elem of data"> {{ elem }} </li> </ol>

Kry produkte uit jou diens in die komponent en vertoon hulle in die templaat van die komponent.

Maak 'n metode in jou diens om 'n nuwe produk by te voeg. Maak 'n knoppie in die komponent, waarop 'n klik 'n nuwe produk sal byvoeg.

Maak 'n vorm met twee invoervelde en 'n knoppie, waarop 'n druk 'n nuwe produk sal byvoeg.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp