restate / v1.0.0
Referenca API-ja
Vsak izvoz @kkwaenggwari/restate 1.0 z argumenti, vrnjenimi vrednostmi in vedenjem.
Na tej strani
IzvoziMetode storeaMetode shranjenega storeaMožnosti persistedRestatePolja stanjarestateManager in scope.managerVmesnik vmesnika za shramboIzvozi
Vse se uvaža iz @kkwaenggwari/restate, na spletu in v React Nativu.
| Izvoz | Vrne | Za kaj |
|---|---|---|
restate(initial, updater | options?) | Hook storea | Ustvariti skupni store v pomnilniku. |
persistedRestate(initial, options) | Hook shranjenega storea | Ustvariti store, ki se obnavlja in shranjuje prek shrambe. |
useRestateScope(factory?) | Rezultat factoryja ali scope | Imeti storeje v komponenti; po odklopu se uničijo. |
createRestateScope() | RestateScope | Imeti storeje zunaj Reacta; na koncu pokličite destroy(). |
shallow(left, right) | boolean | Primerjati izbore eno raven globoko. |
batch(callback) | Rezultat callbacka | Obvestiti naročnike enkrat po več spremembah. |
restateManager | RestateManager | Čakati na podatke ob zagonu in izvajati skupne operacije nad globalnimi storeji. |
createIndexedDBStorage(options?) | RestateStorage | Ustvariti vmesnik IndexedDB z lastnim imenom zbirke podatkov ali storea. |
createMMKVStorage(options?) | RestateStorage | Ustvariti vmesnik MMKV z lastnim primerkom ali konfiguracijo. |
Metode storea
Store je funkcija, ki jo kličete kot hook, s temi metodami.
| Član | Opis |
|---|---|
useStore() | Vrne celotno vrednost in se znova upodobi ob vsaki spremembi. |
useStore(selector, isEqual?) | Vrne izbor; znova se upodobi, ko isEqual (privzeto Object.is) javi spremembo. |
get() | Trenutna vrednost brez naročnine. |
set(value | updater) | Zamenja vrednost ali jo izračuna iz prejšnje. Po destroy() se prezre. |
reset() | Obnovi deklarirano začetno vrednost in jo vrne. |
subscribe(listener) | Po vsaki spremembi pokliče listener(value, previous, event); vrne funkcijo za odjavo. |
subscribeSelector(selector, listener, isEqual?) | Pokliče listener le, ko se izbor spremeni. |
on(type, listener) | Posluša dogodke, kot so change, reset, save ali error. |
start() / stop() / isRunning() | Ročno upravljanje updaterja. |
destroy() / isDestroyed() | Sprosti poslušalce in updater. Poznejše naročnine vržejo STORE_DESTROYED. |
getInitial() / getServerSnapshot() / getError() | Začetna vrednost, posnetek s strežnika in zadnja napaka poslušalca. |
id / kind | Enolični id; memory ali persistent. |
Metode shranjenega storea
persistedRestate vrne store s temi dodatnimi člani.
| Član | Opis |
|---|---|
ready | Promise, ki se izpolni, ko se samodejno nalaganje konča, tudi če ni uspelo. Preverite status(). |
save() | Zapiše trenutno vrednost; izpolni se z dejansko zapisano vrednostjo. |
restore() | Prebere shranjeno vrednost v pomnilnik. |
hasSaved() | Ali obstaja shranjen zapis. |
clearStorage() | Izbriše shranjen zapis; pomnilnik se ne spremeni. |
resetAndClearStorage() | Ponastavi pomnilnik na začetno vrednost in izbriše shranjen zapis. |
initialize() | Znova naloži, na primer po popravku neuspelega zapisa. |
status() | Zamrznjen posnetek stanja; isti objekt, dokler se katero polje ne spremeni. |
useStatus(selector?, isEqual?) | Hook, ki se znova upodobi, ko se spremeni stanje ali njegov izbrani del. |
key / storageKey / storage | Logični ključ, ključ z imenskim prostorom in uporabljeni vmesnik. |
Možnosti persistedRestate
key je obvezen. Vse druge možnosti so neobvezne.
| Možnost | Privzeto | Pomen |
|---|---|---|
key | obvezno | Logični ključ zapisa. |
namespace | "@kkwaenggwari/restate" | Predpona shranjenega ključa; prazen niz jo izklopi. |
storage | IndexedDB / MMKV | Vmesnik namesto privzetega za platformo. |
autoSave | false | true shrani po vsaki spremembi; { delayMs } počaka na premor. |
version / migrate | 1 / brez | Različica zapisa in način nadgradnje starejših zapisov. |
validate | brez | Preveri vrednosti pred shranjevanjem ter po obnovi ali migraciji. |
serializer | JSON | Lastni funkciji serialize in deserialize. |
operationTimeoutMs | 30000 | Najdaljši čas operacije s shrambo. |
maxPendingOperations | 256 | Dovoljene čakajoče operacije, vključno z aktivno. |
maxStorageCharacters | 5242880 | Največja kodirana vrednost v kodnih enotah UTF-16. |
updater / managed / serverSnapshot / onError | — | Kot možnosti restate. |
Polja stanja
status() in useStatus() vrneta ta polja.
| Polje | Pomen |
|---|---|
ready | Samodejno nalaganje se je končalo. |
dirty | Pomnilnik se razlikuje od zadnje naložene, shranjene ali obnovljene vrednosti. |
operation | Trenutna operacija s shrambo ali null. |
pending | Nedokončane operacije s shrambo, vključno z aktivno. |
blocked | Preklican klic vmesnika ali klic s potečenim časom se še ni zaključil. |
available | Ali je shrambo mogoče uporabiti. |
error / observerError | Zadnja napaka shrambe; zadnja napaka poslušalca stanja. |
lastSavedAt / lastRestoredAt | Milisekunde epoch zadnjega uspeha ali null. |
restateManager in scope.manager
Vsak manager spremlja shranjene storeje, ki so registrirani pri njem.
| Član | Opis |
|---|---|
ready | Počaka na storeje, registrirane ob dostopu; zavrne z BULK_OPERATION_FAILED. |
saveAll(options?) / restoreAll(options?) | Izvede save ali restore na vsakem storeu; { concurrency } omeji vzporedno delo. |
clearStorageAll() / resetAll() / resetAllAndClearStorage() | Počisti zapise, ponastavi pomnilnik ali oboje. |
list() / get(idOrKey) / size() | Pregled registriranih storejev. |
subscribe(listener) / status() | Spremljanje dogodkov managerja in napak poslušalcev. |
destroyAll() | Uniči vsak registriran store. |
Vmesnik vmesnika za shrambo
Kot storage podajte objekt s temi metodami. Vsaka metoda lahko vrne vrednost ali Promise.
| Metoda | Opis |
|---|---|
getItem(key, context?) | Vrne shranjen niz ali null. |
setItem(key, value, context?) | Shrani niz. |
removeItem(key, context?) | Izbriše zapis. |
isAvailable?() | Sinhrono javi, ali je shrambo mogoče uporabiti. |
clear?() / close?() | Neobvezno praznjenje in čiščenje. |
coordinationKey? | Objekt, ki si ga delijo ovoji iste osnovne shrambe. |