restate / v1.0.0

API-reference

Hver export i @kkwaenggwari/restate 1.0, med argumenter, returværdier og adfærd.

På denne sideExportsStore-metoderMetoder for gemte storesIndstillinger for persistedRestateStatusfelterrestateManager og scope.managerInterface for lageradapter

Exports

Alt importeres fra @kkwaenggwari/restate, på web og i React Native.

ExportReturnererBruges til
restate(initial, updater | options?)Store-hookOprette en delt store i hukommelsen.
persistedRestate(initial, options)Hook til gemt storeOprette en store, der gendannes og gemmes via lager.
useRestateScope(factory?)Factory-resultat eller scopeEje stores i en komponent; nedlægges efter unmount.
createRestateScope()RestateScopeEje stores uden for React; kald destroy() til sidst.
shallow(left, right)booleanSammenligne udvalg ét niveau dybt.
batch(callback)Callback-resultatGive abonnenter besked én gang efter flere ændringer.
restateManagerRestateManagerVente på opstartsdata og køre massehandlinger på globale stores.
createIndexedDBStorage(options?)RestateStorageOprette en IndexedDB-adapter med eget database- eller store-navn.
createMMKVStorage(options?)RestateStorageOprette en MMKV-adapter med din egen instans eller konfiguration.

Store-metoder

En store er en funktion, du kalder som en hook, med disse metoder.

MedlemBeskrivelse
useStore()Returnerer hele værdien og renderes igen ved hver ændring.
useStore(selector, isEqual?)Returnerer udvalget; renderes igen, når isEqual (standard Object.is) melder en ændring.
get()Aktuel værdi, uden abonnement.
set(value | updater)Erstatter værdien eller beregner den ud fra den forrige. Ignoreres efter destroy().
reset()Gendanner den erklærede startværdi og returnerer den.
subscribe(listener)Kalder listener(value, previous, event) efter hver ændring; returnerer en funktion, der afmelder.
subscribeSelector(selector, listener, isEqual?)Kalder kun listener, når udvalget ændrer sig.
on(type, listener)Lytter til events som change, reset, save eller error.
start() / stop() / isRunning()Styr updateren manuelt.
destroy() / isDestroyed()Frigiver listeners og updateren. Senere abonnementer kaster STORE_DESTROYED.
getInitial() / getServerSnapshot() / getError()Startværdi, serverens snapshot og seneste listener-fejl.
id / kindUnikt id; memory eller persistent.

Metoder for gemte stores

persistedRestate returnerer en store med disse ekstra medlemmer.

MedlemBeskrivelse
readyPromise, der opfyldes, når den automatiske indlæsning er færdig, også hvis den fejlede. Tjek status().
save()Skriver den aktuelle værdi; opfyldes med den værdi, der faktisk blev skrevet.
restore()Læser den gemte værdi ind i hukommelsen.
hasSaved()Om der findes en gemt post.
clearStorage()Sletter den gemte post; hukommelsen ændres ikke.
resetAndClearStorage()Nulstiller hukommelsen til startværdien og sletter den gemte post.
initialize()Indlæser igen, for eksempel efter at en fejlende post er rettet.
status()Frosset statussnapshot; samme objekt, indtil et felt ændrer sig.
useStatus(selector?, isEqual?)Hook, der renderes igen, når status eller den valgte del ændrer sig.
key / storageKey / storageLogisk nøgle, nøgle med navnerum og den anvendte adapter.

Indstillinger for persistedRestate

key er påkrævet. Alle andre indstillinger er valgfrie.

IndstillingStandardBetydning
keypåkrævetPostens logiske nøgle.
namespace"@kkwaenggwari/restate"Præfiks for den gemte nøgle; en tom streng slår det fra.
storageIndexedDB / MMKVAdapter, der bruges i stedet for platformens standard.
autoSavefalsetrue gemmer efter hver ændring; { delayMs } venter på en pause.
version / migrate1 / ingenPostversion og hvordan ældre poster opgraderes.
validateingenKontrollerer værdier før gem og efter gendannelse eller migrering.
serializerJSONEgne funktioner til serialize og deserialize.
operationTimeoutMs30000Længste tid for en lagerhandling.
maxPendingOperations256Tilladte ventende handlinger, inklusive den aktive.
maxStorageCharacters5242880Største kodede værdi, i UTF-16-kodeenheder.
updater / managed / serverSnapshot / onError—Som indstillingerne for restate.

Statusfelter

status() og useStatus() returnerer disse felter.

FeltBetydning
readyDen automatiske indlæsning er færdig.
dirtyHukommelsen afviger fra den senest indlæste, gemte eller gendannede værdi.
operationDen igangværende lagerhandling eller null.
pendingUafsluttede lagerhandlinger, inklusive den aktive.
blockedEt afbrudt adapterkald eller et med timeout er endnu ikke afsluttet.
availableOm lageret kan bruges.
error / observerErrorSeneste lagerfejl; seneste fejl fra en status-listener.
lastSavedAt / lastRestoredAtEpoch-millisekunder for seneste succes eller null.

restateManager og scope.manager

Hver manager holder styr på de gemte stores, der er registreret hos den.

MedlemBeskrivelse
readyVenter på de stores, der er registreret ved adgangen; afviser med BULK_OPERATION_FAILED.
saveAll(options?) / restoreAll(options?)Kører save eller restore på hver store; { concurrency } begrænser parallelt arbejde.
clearStorageAll() / resetAll() / resetAllAndClearStorage()Rydder poster, nulstiller hukommelsen eller begge dele.
list() / get(idOrKey) / size()Inspicér registrerede stores.
subscribe(listener) / status()Observér manager-events og listener-fejl.
destroyAll()Nedlægger hver registreret store.

Interface for lageradapter

Giv et objekt med disse metoder som storage. Hver metode kan returnere en værdi eller et Promise.

MetodeBeskrivelse
getItem(key, context?)Returnerer den gemte streng eller null.
setItem(key, value, context?)Gemmer strengen.
removeItem(key, context?)Sletter posten.
isAvailable?()Melder synkront, om lageret kan bruges.
clear?() / close?()Valgfri tømning og oprydning.
coordinationKey?Objekt, der deles af wrappers omkring det samme underliggende lager.

Søg i dokumentationen

Søg i titler, beskrivelser og tekst i alle guides.