ホームページ  >  記事  >  ウェブフロントエンド  >  React JSのTodoリスト

React JSのTodoリスト

王林
王林オリジナル
2024-08-01 07:34:22302ブラウズ

Todo list in react js

LinkedIn でフォローしてください
Github.com でフォローしてください

クリックして読んでください

このシンプルな Todo リスト アプリは、初心者が状態管理、イベント処理、リストのレンダリングなど、React の基礎に慣れるための優れた出発点となります。

React で Todo リスト アプリを作成するためのステップバイステップ ガイド

ステップ 1: React 環境をセットアップする

始める前に、Node.js と npm (または Yarn) がマシンにインストールされていることを確認してください。 Create React App を使用して、新しい React プロジェクトを作成できます。

ターミナルまたはコマンド プロンプトを開き、次のコマンドを実行して新しい React プロジェクトを作成します。

npx create-react-app todo-list

プロジェクト ディレクトリに移動します:

cd todo-list

ステップ 2: src/App.js を変更する

src/App.js の内容を次のコードに置き換えます:

import React, { useState } from 'react';
import './App.css';

function App() {
  const [todos, setTodos] = useState([]);
  const [input, setInput] = useState('');

  const handleInputChange = (e) => {
    setInput(e.target.value);
  };

  const handleAddTodo = () => {
    if (input.trim()) {
      setTodos([...todos, { text: input, completed: false }]);
      setInput('');
    }
  };

  const handleToggleComplete = (index) => {
    const newTodos = todos.map((todo, i) => {
      if (i === index) {
        return { ...todo, completed: !todo.completed };
      }
      return todo;
    });
    setTodos(newTodos);
  };

  const handleDeleteTodo = (index) => {
    const newTodos = todos.filter((_, i) => i !== index);
    setTodos(newTodos);
  };

  return (
    <div className="App">
      <header className="App-header">
        <h1>Todo List</h1>
        <div>
          <input
            type="text"
            value={input}
            onChange={handleInputChange}
            placeholder="Add a new todo"
          />
          <button onClick={handleAddTodo}>Add</button>
        </div>
        <ul>
          {todos.map((todo, index) => (
            <li key={index}>
              <span
                style={{
                  textDecoration: todo.completed ? 'line-through' : 'none',
                }}
                onClick={() => handleToggleComplete(index)}
              >
                {todo.text}
              </span>
              <button onClick={() => handleDeleteTodo(index)}>Delete</button>
            </li>
          ))}
        </ul>
      </header>
    </div>
  );
}

export default App;

ステップ 3: 基本的なスタイルを追加する

src/App.css ファイルを変更して、基本的なスタイルを追加します。

.App {
  text-align: center;
}

.App-header {
  background-color: #282c34;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: calc(10px + 2vmin);
  color: white;
}

input {
  padding: 10px;
  margin-right: 10px;
  font-size: 16px;
}

button {
  padding: 10px;
  font-size: 16px;
  cursor: pointer;
}

ul {
  list-style-type: none;
  padding: 0;
}

li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  margin: 10px 0;
  background-color: #444;
  border-radius: 5px;
}

li span {
  cursor: pointer;
}

ステップ 4: アプリを実行する

これで、次のコマンドを使用して Todo リスト アプリを実行できるようになります:

npm start

このコマンドは開発サーバーを起動し、デフォルトの Web ブラウザで新しい React アプリケーションを開きます。

コーディングを楽しんでください!

以上がReact JSのTodoリストの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。