Urungkan/Ulangi dengan Riwayat Store
Bangun tumpukan riwayat di sekitar store writable untuk mendukung tindakan urungkan dan ulangi.
Urungkan/Ulangi dengan Riwayat Store adalah pelajaran Sveltejs Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Sveltejs Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Sveltejs Academy mencakup 4 pelajaran total.
Tumpukan Riwayat
Bungkus penyimpanan writable dengan larik past/present/future untuk mendukung pembatalan/pengulangan.
Implementasi Dasar
Pertahankan daftar state sebelumnya.
function createHistory(initial) {
let past = [], future = [];
const state = writable(initial);
return {
subscribe: state.subscribe,
set(v) { past.push(get(state)); future = []; state.set(v); },
undo() { if (past.length) { future.push(get(state)); state.set(past.pop()); } },
redo() { if (future.length) { past.push(get(state)); state.set(future.pop()); } }
};
}Batasi Ukuran Tumpukan
Batasi panjang riwayat untuk membatasi penggunaan memori.
Salinan Mendalam
Masukkan salinan mendalam objek untuk menghindari masalah mutasi.
Pintasan Papan Ketik
Ikat Ctrl+Z dan Ctrl+Shift+Z ke pembatalan/pengulangan agar terasa alami.
Menyimpan Riwayat
Simpan ke localStorage untuk pembatalan lintas sesi, dengan memperhatikan ukurannya.
Kinerja
Untuk state berukuran besar, simpan perbedaan alih-alih snapshot lengkap.
Percabangan
Sebagian besar aplikasi menghapus future saat ada tindakan baru; beberapa editor mempertahankan riwayat bercabang.
Pilihan Pustaka
Pustaka seperti svelte-undo menyediakan penyimpanan riwayat siap pakai.
Petunjuk UI
Nonaktifkan tombol pembatalan/pengulangan saat tidak ada yang dapat dibatalkan atau diulangi.
Pengujian
Uji rangkaian tindakan + pembatalan/pengulangan untuk memastikan pengembalian perubahan yang benar.
Pemeriksaan Singkat
Apa fungsi tumpukan future?
Ringkasan
Implementasikan pembatalan/pengulangan dengan tumpukan past/present/future di sekitar penyimpanan writable. Batasi ukurannya dan ikat pintasan.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Urungkan/Ulangi dengan Riwayat Store” gratis?
Ya — teks lengkap “Urungkan/Ulangi dengan Riwayat Store” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Sveltejs Academy, upgrade ke CoddyKit PRO. Kursus Sveltejs Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Urungkan/Ulangi dengan Riwayat Store”?
Bangun tumpukan riwayat di sekitar store writable untuk mendukung tindakan urungkan dan ulangi. Kamu berlatih Sveltejs Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Sveltejs Academy?
Tidak diperlukan pengalaman sebelumnya. Sveltejs Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Urungkan/Ulangi dengan Riwayat Store” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Sveltejs Academy ini?
Ya. Setiap pelajaran Sveltejs Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Arsitektur Store: Modul Fitur
- Pola Bus Peristiwa dengan Store
- Pembaruan UI Optimistis
- Urungkan/Ulangi dengan Riwayat Store