App.js 956 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import logo from './logo.svg';
  2. import './App.css';
  3. export default function App() {
  4. const todos = [
  5. {id: 1, text: "Wash dishes", done: false},
  6. {id: 2, text: "Learn React.js", done: false},
  7. {id: 3, text: "Study English", done: false}
  8. ]
  9. return (
  10. <div className="App">
  11. <h1>Todo List</h1>
  12. <TodoList todos={todos} />
  13. <AddTodo />
  14. </div>
  15. );
  16. }
  17. function TodoList (props) {
  18. return (
  19. <ul>
  20. {props.todos.map(todo =>(
  21. <li key={todo.id}>{todo.text}</li>
  22. ))}
  23. </ul>
  24. )
  25. }
  26. function AddTodo () {
  27. function handleAddTodo(event) {
  28. event.preventDefault();
  29. const text = event.target.elements.addTodo.value;
  30. const todo = {
  31. id: 4,
  32. text,
  33. done: false
  34. }
  35. }
  36. return (
  37. <form onSubmit={handleAddTodo}>
  38. <input name="addTodo" placeholder="Add Todo"></input>
  39. <button type="submit">Submit</button>
  40. </form>
  41. );
  42. }
  43. /* export default App; */