Что знаешь про Angular Signals? Какие базовые API и сущности?
Ответ от нейросети
sobes.tech AI
Angular Signals — это реактивный механизм для управления состоянием и отслеживания изменений в Angular. Они позволяют создавать реактивные переменные, которые автоматически обновляют связанные компоненты или вычисления при изменении значения.
Базовые сущности и API Angular Signals:
-
signal<T>(initialValue: T)— создает сигнал с начальным значением типа T. -
computed<T>(fn: () => T)— создает вычисляемый сигнал, который автоматически пересчитывается при изменении зависимых сигналов. -
effect(fn: () => void)— создает побочный эффект, который выполняется при изменении сигналов, от которых он зависит. -
Методы сигналов:
.get()— получить текущее значение сигнала..set(value: T)— установить новое значение сигнала.
Пример использования:
import { signal, computed, effect } from '@angular/core';
const count = signal(0);
const doubleCount = computed(() => count.get() * 2);
effect(() => {
console.log('Count changed:', count.get());
console.log('Double count:', doubleCount.get());
});
count.set(5); // автоматически вызовет effect и обновит doubleCount
Signals упрощают управление состоянием, делают его более предсказуемым и эффективным, уменьшая необходимость в сложных паттернах подписки и отписки.