⊗jsagPmSvITS 77 of 97 menu

Injeksi Satu Layanan ke Layanan Lain di Angular

Untuk bekerja pada proyek, kita mungkin perlu menyuntikkan satu layanan ke layanan lain untuk memperluas fungsionalitasnya. Mari kita buat layanan lain yang akan menampilkan pesan di konsol saat menambahkan data baru.

Pertama, di folder test/src/app buatlah file log.service.ts. Ekspor kelas LogService, di mana kita akan menuliskan fungsi write untuk menampilkan pesan di konsol:

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

Selanjutnya, buka layanan kita DataService dan impor, injeksi, serta gunakan layanan baru kita:

import { Injectable } from '@angular/core'; import { LogService } from './log.service'; // mengimpor @Injectable() export class DataService { private data: string[] = ['a', 'b', 'c']; constructor(private logService: LogService) { // menginjeksi } getData(): string[] { this.logService.write('data received'); // menggunakan return this.data; } addData(name: string){ this.data.push(name); this.logService.write('new elem added'); // menggunakan } }

Namun, ini belum cukup. Perlu juga mendaftarkan layanan baru di kelas komponen, meskipun tidak digunakan secara langsung di sana:

import { Component } from '@angular/core'; import {DataService} from './data.service'; import {LogService} from './log.service'; // mengimpor @Component({ ........ providers: [DataService, LogService] // menambahkan })
Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak