restate / v1.0.0
API-referencia
A @kkwaenggwari/restate 1.0 minden exportja, argumentumokkal, visszatérési értékekkel és viselkedéssel.
Ezen az oldalon
ExportokA store metódusaiA mentett store metódusaiA persistedRestate beállításaiÁllapotmezőkrestateManager és scope.managerA tárolóadapter interfészeExportok
Minden a @kkwaenggwari/restate csomagból importálható, weben és React Native alatt is.
| Export | Visszatérési érték | Mire való |
|---|---|---|
restate(initial, updater | options?) | Store-hook | Megosztott store létrehozása a memóriában. |
persistedRestate(initial, options) | Mentett store-hook | Tárolóból helyreálló és oda mentő store létrehozása. |
useRestateScope(factory?) | Factory eredménye vagy scope | Store-ok birtoklása egy komponensben; leválasztás után megsemmisülnek. |
createRestateScope() | RestateScope | Store-ok birtoklása a Reacten kívül; a végén hívja meg a destroy() metódust. |
shallow(left, right) | boolean | Kiválasztások összehasonlítása egy szint mélységig. |
batch(callback) | A callback eredménye | A feliratkozók egyszeri értesítése több változás után. |
restateManager | RestateManager | Az indulási adatok megvárása és tömeges műveletek futtatása a globális store-okon. |
createIndexedDBStorage(options?) | RestateStorage | IndexedDB-adapter létrehozása saját adatbázis- vagy store-névvel. |
createMMKVStorage(options?) | RestateStorage | MMKV-adapter létrehozása saját példánnyal vagy konfigurációval. |
A store metódusai
A store egy függvény, amelyet hookként hív meg, és ezekkel a metódusokkal rendelkezik.
| Tag | Leírás |
|---|---|
useStore() | A teljes értéket adja vissza, és minden változáskor újrarenderel. |
useStore(selector, isEqual?) | Egy kiválasztást ad vissza; akkor renderel újra, ha az isEqual (alapértelmezés: Object.is) változást jelez. |
get() | Az aktuális érték feliratkozás nélkül. |
set(value | updater) | Lecseréli az értéket, vagy az előzőből számítja ki. A destroy() után figyelmen kívül hagyja. |
reset() | Visszaállítja és visszaadja a deklarált kezdőértéket. |
subscribe(listener) | Minden változás után meghívja a listener(value, previous, event) függvényt; leiratkozó függvényt ad vissza. |
subscribeSelector(selector, listener, isEqual?) | Csak akkor hívja meg a listenert, ha a kiválasztás változik. |
on(type, listener) | Olyan eseményeket figyel, mint a change, a reset, a save vagy az error. |
start() / stop() / isRunning() | Az updater kézi vezérlése. |
destroy() / isDestroyed() | Felszabadítja a listenereket és az updatert. A későbbi feliratkozások STORE_DESTROYED hibát dobnak. |
getInitial() / getServerSnapshot() / getError() | Kezdőérték, a szerver pillanatképe és az utolsó listener-hiba. |
id / kind | Egyedi id; memory vagy persistent. |
A mentett store metódusai
A persistedRestate ezekkel a további tagokkal rendelkező store-t ad vissza.
| Tag | Leírás |
|---|---|
ready | Promise, amely teljesül, amikor az automatikus betöltés véget ér, akkor is, ha sikertelen volt. Ellenőrizze a status() értékét. |
save() | Kiírja az aktuális értéket; a ténylegesen kiírt értékkel teljesül. |
restore() | Beolvassa a mentett értéket a memóriába. |
hasSaved() | Létezik-e mentett rekord. |
clearStorage() | Törli a mentett rekordot; a memória nem változik. |
resetAndClearStorage() | A memóriát a kezdőértékre állítja, és törli a mentett rekordot. |
initialize() | Újra betölt, például egy sikertelen rekord javítása után. |
status() | Az állapot fagyasztott pillanatképe; ugyanaz az objektum, amíg egy mező nem változik. |
useStatus(selector?, isEqual?) | Hook, amely akkor renderel újra, ha az állapot vagy annak kiválasztott része változik. |
key / storageKey / storage | A logikai key, a névtérrel ellátott key és a használt adapter. |
A persistedRestate beállításai
A key kötelező. Minden más beállítás opcionális.
| Beállítás | Alapértelmezés | Jelentés |
|---|---|---|
key | kötelező | A rekord logikai key-e. |
namespace | "@kkwaenggwari/restate" | A mentett key előtagja; üres karakterlánc kikapcsolja. |
storage | IndexedDB / MMKV | Adapter a platform alapértelmezése helyett. |
autoSave | false | A true minden változás után ment; a { delayMs } szünetre vár. |
version / migrate | 1 / nincs | A rekord verziója és a régebbi rekordok frissítésének módja. |
validate | nincs | Ellenőrzi az értékeket mentés előtt, valamint helyreállítás vagy migrálás után. |
serializer | JSON | Saját serialize és deserialize függvények. |
operationTimeoutMs | 30000 | Egy tárolóművelet leghosszabb ideje. |
maxPendingOperations | 256 | Megengedett függő műveletek, az aktívval együtt. |
maxStorageCharacters | 5242880 | A legnagyobb kódolt érték UTF-16 kódegységben. |
updater / managed / serverSnapshot / onError | — | Mint a restate beállításai. |
Állapotmezők
A status() és a useStatus() ezeket a mezőket adja vissza.
| Mező | Jelentés |
|---|---|
ready | Az automatikus betöltés befejeződött. |
dirty | A memória eltér az utoljára betöltött, mentett vagy helyreállított értéktől. |
operation | Az aktuális tárolóművelet vagy null. |
pending | Befejezetlen tárolóműveletek, az aktívval együtt. |
blocked | Egy megszakított vagy időtúllépéses adapterhívás még nem fejeződött be. |
available | Használható-e a tároló. |
error / observerError | Az utolsó tárolóhiba; az utolsó állapot-listener-hiba. |
lastSavedAt / lastRestoredAt | Az utolsó siker epoch ezredmásodpercben vagy null. |
restateManager és scope.manager
Minden manager nyomon követi a nála regisztrált mentett store-okat.
| Tag | Leírás |
|---|---|
ready | A hozzáféréskor regisztrált store-okra vár; BULK_OPERATION_FAILED hibával utasít el. |
saveAll(options?) / restoreAll(options?) | Minden store-on save vagy restore műveletet futtat; a { concurrency } korlátozza a párhuzamos munkát. |
clearStorageAll() / resetAll() / resetAllAndClearStorage() | Törli a rekordokat, alaphelyzetbe állítja a memóriát, vagy mindkettőt. |
list() / get(idOrKey) / size() | A regisztrált store-ok vizsgálata. |
subscribe(listener) / status() | A manager eseményeinek és a listener-hibáknak a figyelése. |
destroyAll() | Megsemmisít minden regisztrált store-t. |
A tárolóadapter interfésze
Adjon át storage-ként egy objektumot ezekkel a metódusokkal. Bármelyik metódus visszaadhat értéket vagy Promise-t.
| Metódus | Leírás |
|---|---|
getItem(key, context?) | Visszaadja a mentett karakterláncot vagy null értéket. |
setItem(key, value, context?) | Elment egy karakterláncot. |
removeItem(key, context?) | Töröl egy rekordot. |
isAvailable?() | Szinkron jelzi, hogy a tároló használható-e. |
clear?() / close?() | Opcionális ürítés és takarítás. |
coordinationKey? | Ugyanazon alaptároló burkolói által megosztott objektum. |