Функция
inject() в Angular позволяет инъектировать зависимости непосредственно в тело функции. Это альтернатива стандартному подходу через конструкторы.Пример использования:
import { inject } from '@angular/core';
import { HttpClient } from '@angular/common/http';
export class DataService {
private http = inject(HttpClient);
fetchData() {
return this.http.get('/api/data');
}
}
inject() вызывает инъекцию Angular для получения нужной зависимости. Ее можно использовать в теле класса, а не только в параметрах конструктора.Пример тестирования:
import { inject } from '@angular/core';
import { HttpTestingController } from '@angular/common/http/testing';
describe('DataService', () => {
let httpMock = inject(HttpTestingController);
it('should fetch data', () => {
// Логика теста
});
});
👉 @sWebDev
