restate / v1.0.0

Reference API

Každý export @kkwaenggwari/restate 1.0 s argumenty, návratovými hodnotami a chováním.

Na této stránceExportyMetody storeMetody ukládaného storeVolby persistedRestateStavová polerestateManager a scope.managerRozhraní adaptéru úložiště

Exporty

Vše se importuje z @kkwaenggwari/restate, na webu i v React Native.

ExportVracíK čemu
restate(initial, updater | options?)Hook storeVytvořit sdílený store v paměti.
persistedRestate(initial, options)Hook ukládaného storeVytvořit store, který se obnovuje a ukládá přes úložiště.
useRestateScope(factory?)Výsledek factory nebo scopeVlastnit story v komponentě; zničí se po odpojení.
createRestateScope()RestateScopeVlastnit story mimo React; na konci zavolejte destroy().
shallow(left, right)booleanPorovnávat výběry do hloubky jedné úrovně.
batch(callback)Výsledek callbackuUpozornit odběratele jednou po několika změnách.
restateManagerRestateManagerČekat na data při spuštění a provádět hromadné operace nad globálními story.
createIndexedDBStorage(options?)RestateStorageVytvořit adaptér IndexedDB s vlastním názvem databáze nebo store.
createMMKVStorage(options?)RestateStorageVytvořit adaptér MMKV s vlastní instancí nebo konfigurací.

Metody store

Store je funkce, kterou voláte jako hook, s těmito metodami.

ČlenPopis
useStore()Vrací celou hodnotu a překreslí se při každé změně.
useStore(selector, isEqual?)Vrací výběr; překreslí se, když isEqual (výchozí Object.is) ohlásí změnu.
get()Aktuální hodnota bez odběru.
set(value | updater)Nahradí hodnotu nebo ji spočítá z předchozí. Po destroy() se ignoruje.
reset()Obnoví deklarovanou výchozí hodnotu a vrátí ji.
subscribe(listener)Po každé změně volá listener(value, previous, event); vrací funkci pro zrušení odběru.
subscribeSelector(selector, listener, isEqual?)Volá listener jen při změně výběru.
on(type, listener)Poslouchá události jako change, reset, save nebo error.
start() / stop() / isRunning()Ruční ovládání updateru.
destroy() / isDestroyed()Uvolní posluchače i updater. Pozdější odběry vyhodí STORE_DESTROYED.
getInitial() / getServerSnapshot() / getError()Výchozí hodnota, snímek ze serveru a poslední chyba posluchače.
id / kindJedinečné id; memory nebo persistent.

Metody ukládaného store

persistedRestate vrací store s těmito dalšími členy.

ČlenPopis
readyPromise, který se splní po dokončení automatického načtení, i když selhalo. Zkontrolujte status().
save()Zapíše aktuální hodnotu; splní se hodnotou, která se skutečně zapsala.
restore()Načte uloženou hodnotu do paměti.
hasSaved()Zda existuje uložený záznam.
clearStorage()Smaže uložený záznam; paměť se nemění.
resetAndClearStorage()Vrátí paměť na výchozí hodnotu a smaže uložený záznam.
initialize()Načte znovu, například po opravě selhaného záznamu.
status()Zmrazený snímek stavu; stejný objekt, dokud se nezmění některé pole.
useStatus(selector?, isEqual?)Hook, který se překreslí, když se změní stav nebo jeho vybraná část.
key / storageKey / storageLogický klíč, klíč s jmenným prostorem a použitý adaptér.

Volby persistedRestate

key je povinný. Všechny ostatní volby jsou volitelné.

VolbaVýchozíVýznam
keypovinnéLogický klíč záznamu.
namespace"@kkwaenggwari/restate"Předpona ukládaného klíče; prázdný řetězec ji vypne.
storageIndexedDB / MMKVAdaptér místo výchozího pro platformu.
autoSavefalsetrue ukládá po každé změně; { delayMs } čeká na pauzu.
version / migrate1 / žádnéVerze záznamu a způsob upgradu starších záznamů.
validatežádnéKontroluje hodnoty před uložením a po obnovení či migraci.
serializerJSONVlastní funkce serialize a deserialize.
operationTimeoutMs30000Nejdelší doba operace s úložištěm.
maxPendingOperations256Povolený počet čekajících operací včetně aktivní.
maxStorageCharacters5242880Největší zakódovaná hodnota v kódových jednotkách UTF-16.
updater / managed / serverSnapshot / onError—Stejné jako volby restate.

Stavová pole

status() a useStatus() vracejí tato pole.

PoleVýznam
readyAutomatické načtení skončilo.
dirtyPaměť se liší od naposledy načtené, uložené nebo obnovené hodnoty.
operationProbíhající operace s úložištěm, nebo null.
pendingNedokončené operace s úložištěm včetně aktivní.
blockedZrušené volání adaptéru nebo volání s vypršeným časem ještě neskončilo.
availableZda lze úložiště použít.
error / observerErrorPoslední chyba úložiště; poslední chyba posluchače stavu.
lastSavedAt / lastRestoredAtMilisekundy epoch posledního úspěchu, nebo null.

restateManager a scope.manager

Každý manager sleduje ukládané story, které jsou u něj registrované.

ČlenPopis
readyČeká na story registrované v okamžiku přístupu; odmítne s BULK_OPERATION_FAILED.
saveAll(options?) / restoreAll(options?)Spustí save nebo restore na každém store; { concurrency } omezuje souběžnou práci.
clearStorageAll() / resetAll() / resetAllAndClearStorage()Vymaže záznamy, obnoví paměť, nebo obojí.
list() / get(idOrKey) / size()Prohlížení registrovaných store.
subscribe(listener) / status()Sledování událostí manageru a chyb posluchačů.
destroyAll()Zničí každý registrovaný store.

Rozhraní adaptéru úložiště

Předejte jako storage objekt s těmito metodami. Každá metoda může vrátit hodnotu nebo Promise.

MetodaPopis
getItem(key, context?)Vrací uložený řetězec, nebo null.
setItem(key, value, context?)Uloží řetězec.
removeItem(key, context?)Smaže záznam.
isAvailable?()Synchronně hlásí, zda lze úložiště použít.
clear?() / close?()Volitelné vyprázdnění a úklid.
coordinationKey?Objekt sdílený obaly téhož podkladového úložiště.

Hledat v dokumentaci

Hledejte v nadpisech, popisech a textu všech průvodců.