Czego się nauczysz?
- Autosave — zapisywanie przy każdej zmianie (debounce)
- Zarządzanie listą notatek z CRUD
- Wyszukiwanie i sortowanie
- Praca z
textareaicontenteditable
Zbudujesz notatnik — tworzenie, edycja, usuwanie notatek z automatycznym zapisem w localStorage. Szybki, prosty i użyteczny.
Czego się nauczysz?
textarea i contenteditableuseNotes// Autosave z debouncefunction useDebounce(value, delay) { const [debounced, setDebounced] = useState(value); useEffect(() => { const timer = setTimeout(() => setDebounced(value), delay); return () => clearTimeout(timer); }, [value, delay]); return debounced;}
// W komponencie edytora:const debouncedContent = useDebounce(content, 1000);useEffect(() => { saveNote(noteId, debouncedContent);}, [debouncedContent]);Powodzenia!
Notatnik to projekt, który musi działać szybko i płynnie. Autosave z debounce jest kluczowy — bez niego zapisywanie przy każdym wciśnięciu klawisza byłoby za wolne. Zrób to dobrze!