To Do
- --
- {Object.keys(todos).map(id => (
-
diff --git a/src/App.js b/src/App.js
index 838aa71..005acd2 100644
--- a/src/App.js
+++ b/src/App.js
@@ -1,71 +1,58 @@
-import React, { Component } from 'react'
+import React, { useState } from 'react'
import uuidv4 from 'uuid/v4'
import Todo from './Todo'
-class App extends Component {
- state = {
- inputValue: '',
- todos: {}
- }
+const App = () => {
+ const [inputValue, setInputValue] = useState('')
+ const [todos, setTodos] = useState({})
- addTodo = todo => {
- this.setState({
- inputValue: '',
- todos: {
- ...this.state.todos,
- [uuidv4()]: todo
- }
+ const addTodo = todo => {
+ setInputValue('')
+ setTodos({
+ ...todos,
+ [uuidv4()]: todo
})
}
- toggleTodo = id => {
- this.setState({
- todos: {
- ...this.state.todos,
- [id]: {
- ...this.state.todos[id],
- checked: !this.state.todos[id].checked
- }
+ const toggleTodo = id => {
+ setTodos({
+ ...todos,
+ [id]: {
+ ...todos[id],
+ checked: !todos[id].checked
}
})
}
- onKeyDownHandler = event => {
+ const onKeyDownHandler = event => {
if (event.keyCode === 13) {
- this.addTodo({
- value: this.state.inputValue,
+ addTodo({
+ value: inputValue,
checked: false
})
}
}
- onChange = event => {
- this.setState({
- inputValue: event.target.value
- })
- }
-
- render() {
- const { inputValue, todos } = this.state
- return (
- To Do
-
-
- {Object.keys(todos).map(id => (
-
- To Do
+
+
+ {Object.keys(todos).map(id => (
+
+