Встречается на собеседованиях • сегодня
Как решать проблемы с кешированием в RTK
В RTK Query проблемы с кешированием чаще всего возникают из-за неверных тегов или отсутствия инвалидации. Вот основные подходы:
- Теги (tags) - помечайте данные тегами для автоматической инвалидации:
js
// В API
tagTypes: ['Posts'],
endpoints: (builder) => ({
getPosts: builder.query({
query: () => '/posts',
providesTags: ['Posts']
}),
addPost: builder.mutation({
query: (post) => ({
url: '/posts',
method: 'POST',
body: post
}),
invalidatesTags: ['Posts']
})
})- Ручная инвалидация через
invalidateTags:
js
dispatch(api.util.invalidateTags(['Posts']))- Параметры кеширования - настройте
keepUnusedDataForиrefetchOn...в API:
js
// В createApi
keepUnusedDataFor: 30, // время в секундах
refetchOnMountOrArgChange: true- Принудительный рефетч через
refetch()из хука запроса
Для сложных случаев используйте api.util.selectInvalidatedBy для точного контроля инвалидации.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы