restate / v1.0.0
API संदर्भ
@kkwaenggwari/restate 1.0 का हर एक्सपोर्ट, आर्ग्युमेंट, लौटाए गए मान और व्यवहार के साथ।
इस पेज पर
एक्सपोर्टस्टोर के मेथडसहेजे गए स्टोर के मेथडpersistedRestate के विकल्पस्टेटस फ़ील्डrestateManager और scope.managerस्टोरेज एडेप्टर इंटरफ़ेसएक्सपोर्ट
सब कुछ @kkwaenggwari/restate से इम्पोर्ट होता है, वेब पर और React Native में।
| एक्सपोर्ट | लौटाता है | किसलिए |
|---|---|---|
restate(initial, updater | options?) | स्टोर हुक | मेमोरी में साझा स्टोर बनाना। |
persistedRestate(initial, options) | सहेजा गया स्टोर हुक | ऐसा स्टोर बनाना जो स्टोरेज से वापस आए और उसमें सहेजा जाए। |
useRestateScope(factory?) | factory परिणाम या scope | कंपोनेंट में स्टोर रखना; अनमाउंट के बाद नष्ट होते हैं। |
createRestateScope() | RestateScope | React के बाहर स्टोर रखना; अंत में destroy() कॉल करें। |
shallow(left, right) | boolean | चयनों की तुलना एक स्तर गहराई तक करना। |
batch(callback) | callback का परिणाम | कई बदलावों के बाद सदस्यों को एक बार सूचित करना। |
restateManager | RestateManager | स्टार्टअप डेटा का इंतज़ार करना और वैश्विक स्टोर पर सामूहिक काम चलाना। |
createIndexedDBStorage(options?) | RestateStorage | अपने डेटाबेस या स्टोर नाम के साथ IndexedDB एडेप्टर बनाना। |
createMMKVStorage(options?) | RestateStorage | अपने इंस्टेंस या कॉन्फ़िगरेशन के साथ MMKV एडेप्टर बनाना। |
स्टोर के मेथड
स्टोर एक फ़ंक्शन है जिसे आप हुक की तरह कॉल करते हैं, इन मेथड के साथ।
| सदस्य | विवरण |
|---|---|
useStore() | पूरा मान लौटाता है और हर बदलाव पर दोबारा रेंडर होता है। |
useStore(selector, isEqual?) | चयन लौटाता है; isEqual (डिफ़ॉल्ट Object.is) बदलाव बताए तो दोबारा रेंडर होता है। |
get() | सदस्यता के बिना मौजूदा मान। |
set(value | updater) | मान बदलता है या उसे पिछले से गणना करता है। destroy() के बाद अनदेखा होता है। |
reset() | घोषित शुरुआती मान वापस लाता है और उसे लौटाता है। |
subscribe(listener) | हर बदलाव के बाद listener(value, previous, event) कॉल करता है; सदस्यता हटाने का फ़ंक्शन लौटाता है। |
subscribeSelector(selector, listener, isEqual?) | listener को सिर्फ़ तब कॉल करता है जब चयन बदले। |
on(type, listener) | change, reset, save या error जैसे इवेंट सुनता है। |
start() / stop() / isRunning() | updater का हाथ से नियंत्रण। |
destroy() / isDestroyed() | listener और updater छोड़ता है। बाद की सदस्यताएँ STORE_DESTROYED फेंकती हैं। |
getInitial() / getServerSnapshot() / getError() | शुरुआती मान, सर्वर स्नैपशॉट और आख़िरी listener त्रुटि। |
id / kind | अद्वितीय id; memory या persistent। |
सहेजे गए स्टोर के मेथड
persistedRestate इन अतिरिक्त सदस्यों वाला स्टोर लौटाता है।
| सदस्य | विवरण |
|---|---|
ready | Promise, जो अपने-आप लोड पूरा होने पर पूरा होता है, चाहे लोड विफल हुआ हो। status() जाँचें। |
save() | मौजूदा मान लिखता है; वास्तव में लिखे गए मान के साथ पूरा होता है। |
restore() | सहेजा गया मान मेमोरी में पढ़ता है। |
hasSaved() | क्या सहेजा गया रिकॉर्ड मौजूद है। |
clearStorage() | सहेजा गया रिकॉर्ड मिटाता है; मेमोरी नहीं बदलती। |
resetAndClearStorage() | मेमोरी को शुरुआती मान पर रीसेट करता है और सहेजा गया रिकॉर्ड मिटाता है। |
initialize() | फिर से लोड करता है, जैसे विफल रिकॉर्ड ठीक करने के बाद। |
status() | स्थिति का जमा हुआ स्नैपशॉट; कोई फ़ील्ड बदलने तक वही ऑब्जेक्ट। |
useStatus(selector?, isEqual?) | हुक, जो स्टेटस या उसका चुना हुआ हिस्सा बदलने पर दोबारा रेंडर होता है। |
key / storageKey / storage | तार्किक key, नेमस्पेस वाली key और इस्तेमाल हो रहा एडेप्टर। |
persistedRestate के विकल्प
key अनिवार्य है। बाक़ी सभी विकल्प वैकल्पिक हैं।
| विकल्प | डिफ़ॉल्ट | अर्थ |
|---|---|---|
key | अनिवार्य | रिकॉर्ड की तार्किक key। |
namespace | "@kkwaenggwari/restate" | सहेजी गई key का उपसर्ग; ख़ाली स्ट्रिंग इसे बंद करती है। |
storage | IndexedDB / MMKV | प्लेटफ़ॉर्म डिफ़ॉल्ट की जगह एडेप्टर। |
autoSave | false | true हर बदलाव के बाद सहेजता है; { delayMs } ठहराव का इंतज़ार करता है। |
version / migrate | 1 / कोई नहीं | रिकॉर्ड का संस्करण और पुराने रिकॉर्ड अपग्रेड करने का तरीक़ा। |
validate | कोई नहीं | सहेजने से पहले और वापस लाने या माइग्रेशन के बाद मान जाँचता है। |
serializer | JSON | अपने serialize और deserialize फ़ंक्शन। |
operationTimeoutMs | 30000 | स्टोरेज काम की अधिकतम अवधि। |
maxPendingOperations | 256 | अनुमत लंबित काम, सक्रिय काम सहित। |
maxStorageCharacters | 5242880 | UTF-16 कोड यूनिट में सबसे बड़ा एन्कोड किया गया मान। |
updater / managed / serverSnapshot / onError | — | restate के विकल्पों जैसा। |
स्टेटस फ़ील्ड
status() और useStatus() ये फ़ील्ड लौटाते हैं।
| फ़ील्ड | अर्थ |
|---|---|
ready | अपने-आप लोड पूरा हो गया। |
dirty | मेमोरी आख़िरी बार लोड, सहेजे या वापस लाए गए मान से अलग है। |
operation | मौजूदा स्टोरेज काम या null। |
pending | अधूरे स्टोरेज काम, सक्रिय काम सहित। |
blocked | रद्द या समय-सीमा पार कर चुकी एडेप्टर कॉल अभी पूरी नहीं हुई है। |
available | क्या स्टोरेज इस्तेमाल हो सकता है। |
error / observerError | आख़िरी स्टोरेज त्रुटि; आख़िरी स्टेटस listener त्रुटि। |
lastSavedAt / lastRestoredAt | आख़िरी सफलता के epoch मिलीसेकंड या null। |
restateManager और scope.manager
हर manager अपने साथ पंजीकृत सहेजे गए स्टोर पर नज़र रखता है।
| सदस्य | विवरण |
|---|---|
ready | एक्सेस के समय पंजीकृत स्टोर का इंतज़ार करता है; BULK_OPERATION_FAILED के साथ अस्वीकार करता है। |
saveAll(options?) / restoreAll(options?) | हर स्टोर पर save या restore चलाता है; { concurrency } समानांतर काम सीमित करता है। |
clearStorageAll() / resetAll() / resetAllAndClearStorage() | रिकॉर्ड साफ़ करता है, मेमोरी रीसेट करता है या दोनों। |
list() / get(idOrKey) / size() | पंजीकृत स्टोर की जाँच। |
subscribe(listener) / status() | manager इवेंट और listener त्रुटियों पर नज़र। |
destroyAll() | हर पंजीकृत स्टोर नष्ट करता है। |
स्टोरेज एडेप्टर इंटरफ़ेस
storage के रूप में इन मेथड वाला ऑब्जेक्ट दें। हर मेथड मान या Promise लौटा सकता है।
| मेथड | विवरण |
|---|---|
getItem(key, context?) | सहेजी गई स्ट्रिंग या null लौटाता है। |
setItem(key, value, context?) | स्ट्रिंग सहेजता है। |
removeItem(key, context?) | रिकॉर्ड मिटाता है। |
isAvailable?() | सिंक्रोनस रूप से बताता है कि स्टोरेज इस्तेमाल हो सकता है या नहीं। |
clear?() / close?() | वैकल्पिक फ़्लश और सफ़ाई। |
coordinationKey? | एक ही मूल स्टोरेज के रैपर द्वारा साझा ऑब्जेक्ट। |