तुमच्या स्टेट स्टॅकचा निर्णय घेणारा प्रश्न
Redux ची तुलना React Query शी करणे थांबवा.
तुम्ही काय बनवत आहात हे माहित नसताना तुम्हाला हातोडा हवा की स्क्रू ड्रायव्हर हे विचारण्यासारखे आहे. Redux, React Query आणि Zustand हे सर्व वेगवेगळ्या समस्या सोडवतात.
खरा निर्णय एका प्रश्नातून येतो: प्रत्येक 'स्टेट'साठी (state) 'सत्य'चा स्रोत (source of truth) कोणाकडे आहे?
तुमच्याकडे दोन प्रकारचे 'सत्य' (truth) आहेत.
१. मालकीचे सत्य (Owned Truth) क्लायंट हा त्याचा स्रोत आहे. यामध्ये खालील गोष्टींचा समावेश होतो:
- साइडबार उघडा आहे का?
- सध्याचा थीम कोणता आहे?
- फॉर्मचा कोणता टप्पा सक्रिय आहे? ही स्टेट तुमच्या स्थानिक निर्णयांवर अवलंबून असते. तिला सर्व्हरकडून पुन्हा पडताळणी करण्याची गरज नसते.
२. उसने घेतलेले सत्य (Borrowed Truth) स्रोत सर्व्हरवर असतो. क्लायंटकडे फक्त त्या डेटाचा आरसा असतो. हा डेटा तुमच्या नकळत बदलत असतो. तुमचे काम खालील गोष्टी व्यवस्थापित करणे आहे:
- Staleness (डेटा जुना होणे)
- Invalidation (अवैधता)
- Refetching (पुन्हा मिळवणे