Felhasználói eszközök

Eszközök a webhelyen


oktatas:web:angular:angular_szolgaltatasok

< Angular

Angular szolgáltatások

Szolgáltatás

Szolgáltatás generálása:

ng generate service valami

Rövden:

ng g s valami

A szolgáltatásokat egy shared nevű könyvtárba szokás tenni:

ng g service shared/valami

Ami létrejött

Az ng g service shared/valami utasítás hatására létrejön a következő:

  • src/app/shared/valami.service.ts
  • src/app/shared/valami.service.spec.ts
src/app/shared/valami.service.ts
import { Injectable } from '@angular/core';
 
@Injectable({
  providedIn: 'root'
})
export class ValamiService {
 
  constructor() { }
}

Létrejött tesztfájl:

src/app/shared/valami.service.spec.ts
import { TestBed } from '@angular/core/testing';
 
import { ValamiService } from './valami.service';
 
describe('ValamiService', () => {
  let service: ValamiService;
 
  beforeEach(() => {
    TestBed.configureTestingModule({});
    service = TestBed.inject(ValamiService);
  });
 
  it('should be created', () => {
    expect(service).toBeTruthy();
  });
});

Felhasználás komponensben

Szolgáltatás:

src/app/shared/fruit.service.ts
import { Injectable } from '@angular/core';
 
@Injectable({
  providedIn: 'root'
})
export class ValamiService {
  fruits = [
    'alma', 
    'körte', 
    'barack',
    'szilva'
  ];
 
  constructor() { }
 
  getFruits() {
    return this.fruits;
  }
}
src/app/teker/teker.component.ts
import { Component, OnInit } from '@angular/core';
import { FruitService } from '../shared/fruit.service';
 
@Component({
  selector: 'app-teker',
  templateUrl: './teker.component.html',
  styleUrls: ['./teker.component.scss']
})
export class TekerComponent implements OnInit {
 
  fruits !: string[];
 
  constructor(private fruit: FruitService) { }
 
  ngOnInit(): void {
    this.fruits = this.fruit.getFruits();
  }
 
}
src/app/teker/teker.component.html
<ul>
    <li *ngFor="let fruit of fruits">
        {{fruit}}
    </li>
</ul>
oktatas/web/angular/angular_szolgaltatasok.txt · Utolsó módosítás: 2023/05/20 23:09 szerkesztette: admin