feat(challenge1): modernization

This commit is contained in:
thomas
2025-01-27 21:39:33 +01:00
parent 9c7a37013e
commit e58a789133
10 changed files with 83 additions and 95 deletions

View File

@@ -1,23 +1,21 @@
import { Injectable } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { Injectable, signal } from '@angular/core';
import { City } from '../model/city.model';
@Injectable({
providedIn: 'root',
})
export class CityStore {
private cities = new BehaviorSubject<City[]>([]);
cities$ = this.cities.asObservable();
private cities = signal<City[]>([]);
addAll(cities: City[]) {
this.cities.next(cities);
this.cities.set(cities);
}
addOne(student: City) {
this.cities.next([...this.cities.value, student]);
this.cities.set([...this.cities(), student]);
}
deleteOne(id: number) {
this.cities.next(this.cities.value.filter((s) => s.id !== id));
this.cities.set(this.cities().filter((s) => s.id !== id));
}
}