⊗jsagPmSvITS 77 of 97 menu

Εισαγωγή μιας υπηρεσίας σε μια άλλη στο Angular

Για την εργασία σε ένα project μπορεί να χρειαστεί να εισάγουμε μια υπηρεσία σε μια άλλη, ώστε να επεκτείνουμε τη λειτουργικότητά τους. Ας δημιουργήσουμε μια ακόμη υπηρεσία, που θα εκτυπώνει μηνύματα στην κονσόλα κατά την προσθήκη νέων δεδομένων.

Αρχικά, στο φάκελο test/src/app δημιουργούμε το αρχείο log.service.ts. Εξάγουμε την κλάση LogService, στην οποία θα γράψουμε τη συνάρτηση write για την εκτύπωση μηνυμάτων στην κονσόλα:

import { Injectable } from '@angular/core'; @Injectable() export class LogService { write(message: string) { console.log(message); } }

Στη συνέχεια, πηγαίνουμε στην υπηρεσία μας DataService και εισάγουμε, εγχύουμε και χρησιμοποιούμε τη νέα μας υπηρεσία:

import { Injectable } from '@angular/core'; import { LogService } from './log.service'; // εισάγουμε @Injectable() export class DataService { private data: string[] = ['a', 'b', 'c']; constructor(private logService: LogService) { // εγχύνουμε } getData(): string[] { this.logService.write('data received'); // χρησιμοποιούμε return this.data; } addData(name: string){ this.data.push(name); this.logService.write('new elem added'); // χρησιμοποιούμε } }

Αυτό, ωστόσο, δεν είναι αρκετό. Πρέπει επίσης να δηλώσουμε τη νέα υπηρεσία και στην κλάση του component, αν και δεν χρησιμοποιείται απευθείας εκεί:

import { Component } from '@angular/core'; import {DataService} from './data.service'; import {LogService} from './log.service'; // εισάγουμε @Component({ ........ providers: [DataService, LogService] // προσθέτουμε })
Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Χρησιμοποιούμε cookie για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη