Ihrisko

Meňte vstupy. Sledujte, ako restate odpovedá.

Sedem experimentov spúšťa skutočný balík. Ovládač vľavo patrí tomuto webu; príklad vpravo dostáva len props, takže jeho kód je presne to, čo by ste napísali vy.

Ovládač — len pre webprops — mostPríklad — kód, ktorý kopírujete
01

Dve obrazovky, jeden store

Viacero komponentov potrebuje rovnakú hodnotu. Deklarujte ju raz a čítajte kdekoľvek.

Čo sledovať
  • Stlačte tlačidlo kroku: všetci čitatelia ukážu nové číslo v rovnakom okamihu.
  • Zmeňte počet čitateľov: nový čitateľ začne od aktuálnej hodnoty.

Príprava príkladu…

Začíname
02

Prekreslite len to, čo sa zmenilo

Veľký store by nemal pri každej úprave prekresľovať každý komponent.

Čo sledovať
  • Upravte kartičku: prekreslí sa len karta celého store.
  • Pridajte položku: prekreslia sa položky a súhrn; karta kupónu zostáva.
  • Vypnite shallow: súhrn sa prekreslí pri každej úprave, pretože jeho selector zakaždým vracia nový objekt.

Príprava príkladu…

Odoberajte len to, čo potrebujete
03

Veľa zmien, jedno upozornenie

Aktualizácia dvoch store jeden po druhom umožní odberateľovi vidieť napoly hotový stav.

Čo sledovať
  • Vyprázdniť zvlášť: odberateľ uvidí 0 položiek spolu so starým kupónom.
  • Vyprázdniť cez batch: odberateľ sa spustí raz, až keď sa zmenia oba store.

Príprava príkladu…

Odoberajte len to, čo potrebujete
04

Ukladajte, keď sa rozhodnete

Úprava mení pamäť. Uloženie je explicitná akcia a stav ukazuje, čo sa deje.

Čo sledovať
  • Píšte: dirty sa zapne a zatiaľ sa nič nezapisuje.
  • Zvýšte latenciu a uložte: operation ukazuje save, kým zápis prebieha.
  • Prehrajte znova: uložený koncept sa obnoví z IndexedDB.

Príprava príkladu…

Ukladajte, keď sa rozhodnete
05

Píšte rýchlo, zapisujte raz

Ukladanie pri každom stlačení klávesu zahltí úložisko. autoSave čaká na pauzu.

Čo sledovať
  • Napíšte vetu: úpravy rýchlo pribúdajú, zatiaľ čo zápisov pribudne jeden po každej pauze.
  • Zvoľte „Pri každej úprave“: každá úprava sa zapíše, ale návrat k uloženej hodnote nezapíše nič.

Príprava príkladu…

Ukladajte, keď sa rozhodnete
06

Laboratórium porúch

Urobte úložisko pomalé, pokazené alebo nedostupné a sledujte, ako restate uchová vaše údaje a nahlási problém.

Čo sledovať
  • Zvýšte latenciu a uložte trikrát: požiadavky zdieľajú jeden zápis, takže pending zostane na 1 a tri výsledky prídu spolu.
  • Zapnite zlyhávajúce zápisy a uložte: dirty zostane true a error ukáže príčinu.
  • Nastavte úložisko ako nedostupné: uloženie sa odmietne so STORAGE_UNAVAILABLE, kým úpravy ďalej fungujú.

Príprava príkladu…

Spoľahlivosť by design
07

Stav pre každý dokument

Každý otvorený dokument potrebuje vlastný stav, ktorý sa pri zatvorení dokumentu uvoľní.

Čo sledovať
  • Píšte do dokumentu A a potom do B: každý si ponechá svoj text.
  • Zatvorte dokument A a znova ho otvorte: začne prázdny, pretože jeho scope bol zničený.

Príprava príkladu…

Stav patriaci komponentu

Hľadať v dokumentácii

Hľadajte v nadpisoch, popisoch a texte všetkých sprievodcov.