Créer un service

Exemple de service

import {Injectable} from '@angular/core';

@Injectable()
export class PersonneService {

  // injection d'un service
  constructor(private _autreService:AutreService) {}

  list() { // ...}
}

Le décorateur @Injectable n'est pas obligatoire, il est requis dans le cas où l'on souhaite injecter un autre service.

Rendre disponible un service au sein d'un module

// ...
import { PersonneService } from './shared/service/personne.service';

@NgModule({
  //...
  providers: [PersonneService],
  // ...
})
export class AppModule { }

Depuis Angular 6, un attribut providedIn a été ajouté au décorateur @Injectable(). Celui-ci rend optionnel, la déclaration du service dans le module. Exemple :

import { Injectable } from '@angular/core';

@Injectable({
  providedIn: 'root',
})
export class PersonneService {
  constructor() { }
}

Utiliser un service dans un composant

@Component({ // ...})
export class MonComposant {

  // injection du service
  constructor(private pService:PersonneService) {
  }

  list() {
    // utilisation du service
    this.pService.list()
  }
}

results matching ""

    No results matching ""