Angular · Senior · Запитання 9 з 75
Коли варто передати сигналу власну функцію equal?
user = signal<User>(initial, { equal: (a, b) => a.id === b.id && a.version === b.version });- ✓Правильна відповідь: Щоб не сповіщати залежних, коли новий об'єкт за змістом дорівнює старому
- 2Щоб сигнал глибоко заморожував своє значення
- 3Щоб порівнювати сигнал зі значеннями із сервера
Пояснення
За замовчуванням сигнали використовують Object.is, тож кожен новий об'єкт спричиняє оновлення. Власне порівняння позбавляє перерахунків і перемальовувань, коли повторний запит повернув ті самі дані.