Керування станом · Senior · Запитання 23 з 75

Чому рекомендують фабрики ключів запитів?

export const todoKeys = {
  all: ["todos"] as const,
  lists: () => [...todoKeys.all, "list"] as const,
  list: (filters: Filters) => [...todoKeys.lists(), filters] as const,
  detail: (id: number) => [...todoKeys.all, "detail", id] as const,
};

Пояснення

Одруківки в ключах, написаних вручну, тихо ламають кешування й інвалідацію. Фабрика дає єдине джерело істини: invalidateQueries({ queryKey: todoKeys.lists() }) оновлює всі списки, але не деталі.

Де почитати

Помилка в запитанні

Керування станом · Senior · запитання 23

Перевірте себе

Пройдіть тест Керування станом · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест