restate / v1.0.0
API-viite
Jokainen @kkwaenggwari/restate 1.0:n export argumentteineen, paluuarvoineen ja toimintoineen.
Tällä sivulla
ExportitStoren metoditTallennetun storen metoditpersistedRestaten asetuksetTilakentätrestateManager ja scope.managerTallennussovittimen rajapintaExportit
Kaikki importataan paketista @kkwaenggwari/restate, niin webissä kuin React Nativessa.
| Export | Palauttaa | Käyttötarkoitus |
|---|---|---|
restate(initial, updater | options?) | Store-hook | Jaetun storen luominen muistiin. |
persistedRestate(initial, options) | Tallennetun storen hook | Storen luominen, joka palautuu tallennustilasta ja tallentuu siihen. |
useRestateScope(factory?) | Factoryn tulos tai scope | Storejen omistaminen komponentissa; ne tuhotaan irrottamisen jälkeen. |
createRestateScope() | RestateScope | Storejen omistaminen Reactin ulkopuolella; kutsu lopuksi destroy(). |
shallow(left, right) | boolean | Valintojen vertaaminen yhden tason syvyydeltä. |
batch(callback) | Callbackin tulos | Tilaajille ilmoittaminen kerran useiden muutosten jälkeen. |
restateManager | RestateManager | Käynnistysdatan odottaminen ja joukkotoimintojen suorittaminen globaaleille storeille. |
createIndexedDBStorage(options?) | RestateStorage | IndexedDB-sovittimen luominen omalla tietokannan tai storen nimellä. |
createMMKVStorage(options?) | RestateStorage | MMKV-sovittimen luominen omalla instanssilla tai asetuksilla. |
Storen metodit
Store on funktio, jota kutsut hookina ja jolla on nämä metodit.
| Jäsen | Kuvaus |
|---|---|
useStore() | Palauttaa koko arvon ja renderöityy uudelleen jokaisella muutoksella. |
useStore(selector, isEqual?) | Palauttaa valinnan; renderöityy uudelleen, kun isEqual (oletus Object.is) ilmoittaa muutoksesta. |
get() | Nykyinen arvo ilman tilausta. |
set(value | updater) | Korvaa arvon tai laskee sen edellisestä. Ohitetaan destroy()-kutsun jälkeen. |
reset() | Palauttaa määritellyn alkuarvon ja palauttaa sen. |
subscribe(listener) | Kutsuu listener(value, previous, event) -funktiota jokaisen muutoksen jälkeen; palauttaa tilauksen peruvan funktion. |
subscribeSelector(selector, listener, isEqual?) | Kutsuu listeneriä vain, kun valinta muuttuu. |
on(type, listener) | Kuuntelee tapahtumia, kuten change, reset, save tai error. |
start() / stop() / isRunning() | Updaterin käsiohjaus. |
destroy() / isDestroyed() | Vapauttaa listenerit ja updaterin. Myöhemmät tilaukset heittävät STORE_DESTROYED-virheen. |
getInitial() / getServerSnapshot() / getError() | Alkuarvo, palvelimen tilannekuva ja viimeisin listener-virhe. |
id / kind | Yksilöllinen id; memory tai persistent. |
Tallennetun storen metodit
persistedRestate palauttaa storen, jolla on nämä lisäjäsenet.
| Jäsen | Kuvaus |
|---|---|
ready | Promise, joka täyttyy, kun automaattinen lataus päättyy, vaikka se epäonnistuisi. Tarkista status(). |
save() | Kirjoittaa nykyisen arvon; täyttyy todella kirjoitetulla arvolla. |
restore() | Lukee tallennetun arvon muistiin. |
hasSaved() | Onko tallennettu tietue olemassa. |
clearStorage() | Poistaa tallennetun tietueen; muisti ei muutu. |
resetAndClearStorage() | Palauttaa muistin alkuarvoon ja poistaa tallennetun tietueen. |
initialize() | Lataa uudelleen, esimerkiksi epäonnistuneen tietueen korjaamisen jälkeen. |
status() | Jäädytetty tilannekuva tilasta; sama objekti, kunnes jokin kenttä muuttuu. |
useStatus(selector?, isEqual?) | Hook, joka renderöityy uudelleen, kun tila tai sen valittu osa muuttuu. |
key / storageKey / storage | Looginen key, nimiavaruudellinen key ja käytössä oleva sovitin. |
persistedRestaten asetukset
key on pakollinen. Kaikki muut asetukset ovat valinnaisia.
| Asetus | Oletus | Merkitys |
|---|---|---|
key | pakollinen | Tietueen looginen key. |
namespace | "@kkwaenggwari/restate" | Tallennetun keyn etuliite; tyhjä merkkijono poistaa sen käytöstä. |
storage | IndexedDB / MMKV | Sovitin alustan oletuksen sijaan. |
autoSave | false | true tallentaa jokaisen muutoksen jälkeen; { delayMs } odottaa taukoa. |
version / migrate | 1 / ei mitään | Tietueen versio ja tapa päivittää vanhemmat tietueet. |
validate | ei mitään | Tarkistaa arvot ennen tallennusta sekä palautuksen tai siirron jälkeen. |
serializer | JSON | Omat serialize- ja deserialize-funktiot. |
operationTimeoutMs | 30000 | Tallennustoiminnon pisin kesto. |
maxPendingOperations | 256 | Sallitut odottavat toiminnot, aktiivinen mukaan lukien. |
maxStorageCharacters | 5242880 | Suurin koodattu arvo UTF-16-koodiyksikköinä. |
updater / managed / serverSnapshot / onError | — | Kuten restaten asetukset. |
Tilakentät
status() ja useStatus() palauttavat nämä kentät.
| Kenttä | Merkitys |
|---|---|
ready | Automaattinen lataus on päättynyt. |
dirty | Muisti poikkeaa viimeksi ladatusta, tallennetusta tai palautetusta arvosta. |
operation | Käynnissä oleva tallennustoiminto tai null. |
pending | Keskeneräiset tallennustoiminnot, aktiivinen mukaan lukien. |
blocked | Peruttu tai aikakatkaistu sovitinkutsu ei ole vielä päättynyt. |
available | Voiko tallennustilaa käyttää. |
error / observerError | Viimeisin tallennusvirhe; viimeisin tilan listener-virhe. |
lastSavedAt / lastRestoredAt | Viimeisimmän onnistumisen epoch-millisekunnit tai null. |
restateManager ja scope.manager
Jokainen manager seuraa siihen rekisteröityjä tallennettuja storeja.
| Jäsen | Kuvaus |
|---|---|
ready | Odottaa käyttöhetkellä rekisteröityjä storeja; hylkää virheellä BULK_OPERATION_FAILED. |
saveAll(options?) / restoreAll(options?) | Suorittaa save- tai restore-toiminnon jokaiselle storelle; { concurrency } rajoittaa rinnakkaista työtä. |
clearStorageAll() / resetAll() / resetAllAndClearStorage() | Tyhjentää tietueet, nollaa muistin tai molemmat. |
list() / get(idOrKey) / size() | Rekisteröityjen storejen tarkastelu. |
subscribe(listener) / status() | Managerin tapahtumien ja listener-virheiden seuraaminen. |
destroyAll() | Tuhoaa jokaisen rekisteröidyn storen. |
Tallennussovittimen rajapinta
Anna storage-arvoksi objekti, jolla on nämä metodit. Jokainen metodi voi palauttaa arvon tai Promisen.
| Metodi | Kuvaus |
|---|---|
getItem(key, context?) | Palauttaa tallennetun merkkijonon tai null. |
setItem(key, value, context?) | Tallentaa merkkijonon. |
removeItem(key, context?) | Poistaa tietueen. |
isAvailable?() | Ilmoittaa synkronisesti, voiko tallennustilaa käyttää. |
clear?() / close?() | Valinnainen tyhjennys ja siivous. |
coordinationKey? | Saman pohjatallennustilan kääreiden jakama objekti. |