Playground

Ubah input. Lihat bagaimana restate merespons.

Tujuh percobaan menjalankan paket sungguhan. Pengontrol di kiri milik situs ini; contoh di kanan hanya menerima props, jadi kodenya persis seperti yang akan Anda tulis sendiri.

Pengontrol — hanya untuk situsprops — jembatanContoh — kode yang Anda salin
01

Dua layar, satu store

Beberapa komponen membutuhkan nilai yang sama. Deklarasikan sekali dan baca di mana saja.

Yang perlu diperhatikan
  • Tekan tombol langkah: setiap pembaca menampilkan angka baru pada saat yang sama.
  • Ubah jumlah pembaca: pembaca baru mulai dari nilai saat ini.

Menyiapkan contoh…

Memulai
02

Render hanya yang berubah

Store besar tidak semestinya merender ulang setiap komponen pada setiap perubahan.

Yang perlu diperhatikan
  • Edit kartu: hanya kartu seluruh store yang dirender.
  • Tambah produk: produk dan ringkasan dirender; kartu kupon tetap diam.
  • Matikan shallow: ringkasan dirender pada setiap perubahan karena selector-nya mengembalikan objek baru setiap kali.

Menyiapkan contoh…

Berlangganan hanya pada yang Anda butuhkan
03

Banyak perubahan, satu notifikasi

Memperbarui dua store berturut-turut bisa membuat pelanggan melihat state yang setengah jadi.

Yang perlu diperhatikan
  • Kosongkan terpisah: pelanggan melihat 0 produk bersama kupon lama.
  • Kosongkan dengan batch: pelanggan berjalan sekali setelah kedua store berubah.

Menyiapkan contoh…

Berlangganan hanya pada yang Anda butuhkan
04

Simpan saat Anda memutuskan

Mengedit mengubah memori. Menyimpan adalah tindakan eksplisit, dan status menunjukkan apa yang sedang terjadi.

Yang perlu diperhatikan
  • Ketik: dirty aktif dan belum ada yang ditulis.
  • Naikkan penundaan lalu simpan: operation menampilkan save selama penulisan berlangsung.
  • Putar ulang: draf tersimpan dipulihkan dari IndexedDB.

Menyiapkan contoh…

Simpan saat Anda memutuskan
05

Ketik cepat, tulis sekali

Menyimpan setiap tombol ditekan membanjiri penyimpanan. autoSave menunggu jeda.

Yang perlu diperhatikan
  • Ketik satu kalimat: perubahan naik cepat, sementara penulisan bertambah satu setelah setiap jeda.
  • Pilih "Setiap perubahan": setiap perubahan ditulis, dan kembali ke nilai tersimpan tidak menulis apa pun.

Menyiapkan contoh…

Simpan saat Anda memutuskan
06

Lab kegagalan

Buat penyimpanan lambat, rusak, atau tidak tersedia, lalu lihat bagaimana restate menjaga data Anda dan melaporkan masalahnya.

Yang perlu diperhatikan
  • Naikkan penundaan dan simpan tiga kali: permintaan berbagi satu penulisan, jadi pending tetap 1 dan ketiga hasilnya tiba bersamaan.
  • Aktifkan penulisan gagal lalu simpan: dirty tetap true dan error menunjukkan penyebabnya.
  • Buat penyimpanan tidak tersedia: penyimpanan ditolak dengan STORAGE_UNAVAILABLE, tetapi pengeditan tetap berjalan.

Menyiapkan contoh…

Andal sejak rancangan
07

State per dokumen

Setiap dokumen yang terbuka butuh state sendiri yang dilepaskan saat dokumen ditutup.

Yang perlu diperhatikan
  • Ketik di dokumen A lalu di B: masing-masing menyimpan teksnya sendiri.
  • Tutup dokumen A lalu buka lagi: ia mulai kosong karena scope-nya sudah dihancurkan.

Menyiapkan contoh…

State milik komponen

Cari dokumentasi

Cari di judul, deskripsi, dan isi semua panduan.