メインコンテンツまでスキップ

Todoリスト

JavaScriptでシンプルなTodoアプリを作成します。状態管理、リスト操作(追加/編集/削除)、およびローカルストレージに焦点を当てます。

操作に関する要件

  • Todoの追加/編集/削除のUIとフローを構築する。
  • リストの状態をlocalStorageに保存し、アプリ起動時に復元する。
  • Arrayのメソッドを使って状態を管理・更新する。
  • 参考アプリ: https://todo-vanila-react.vercel.app/
  • 副作用を避け、関数スタイルでのコーディングを推奨する。

技術的なヒント

  • todo配列を保存するのにlocalStorageを使用する:保存時はJSON.stringify()、読み込み時はJSON.parse()を使う。
  • 機能を明確に分離する:レンダリング、状態操作、localStorageとのやり取りはそれぞれ別の関数にする。
  • 一覧のレンダリングにはmap、削除やフィルタにはfilter、更新する要素検索にはfindIndexを使用する。
  • localStorageが空の場合でもアプリが動作するように(空配列にフォールバック)する。