RTK QueryAdvanced
Cache Invalidation — Tag Mechanics
invalidatesTags ও providesTags-এর গভীর কাজ, বনাম manual refetch — বাংলায়।
6টি অংশবাংলা ভাষায়
প্রথম query-র প্রতিটি result-এর সাথে providesTags জড়িয়ে রাখা হয়। কোনো mutation-এ invalidatesTags মিলে গেলে — matching সেগুলো query cache sau'b]['stale'] হয়ে যাবে এবং mounted হলে refetch।
কাজ করার ধাপ
getProductsসফল → cache-এ result + tags[Product:LIST ...]deleteProduct(p1)সফল →invalidatesTags [Product]- RTK Query খোঁজে: cache-এ Product-type প্রবেশমাত্র tag-সহ query?
- মিলে গেলে →
status: 'rejected', isUninitialized: false+ refetch
manual refetch vs invalidation
| বিষয় | invalidatesTags | refetch() |
|---|---|---|
| Scope | সব matching query | একটি hook scope |
| Design | Declarative (tag-based) | imperative |
| RRF | optimistic/UI-অনির্ভর | আমরা কোথায় বলব |
| সেরা জন্য | CRUD mutations | pull-to-refresh, ভাষা |
over-invalidating
অতিরিক্ত broad tag (["Product"] সর্বত্র) প্রতিটি mutation-এ পুরো ডাটাবেস refetch — bottleneck। যতটা সম্ভব specific tag (Product:${id} + Product:LIST) রাখুন।
শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।