From 5cb3be5d49c54d4538d35bf0f35666d3ed578bf0 Mon Sep 17 00:00:00 2001 From: Jennie Kim Date: Fri, 17 Sep 2021 18:21:00 +0900 Subject: [PATCH] lab submission --- src/App.js | 17 +++++++- src/components/Todo/Todo.js | 14 +++++++ src/components/TodoDetail/TodoDetail.js | 26 ++++++++++++ src/containers/TodoList/NewTodo/NewTodo.js | 37 +++++++++++++++++ src/containers/TodoList/TodoList.js | 46 ++++++++++++++++++++++ 5 files changed, 138 insertions(+), 2 deletions(-) diff --git a/src/App.js b/src/App.js index e358583..df12029 100644 --- a/src/App.js +++ b/src/App.js @@ -1,11 +1,24 @@ import React from 'react'; import logo from './logo.svg'; import './App.css'; +import TodoList from './containers/TodoList/Todolist' +import { BrowserRouter, Route, Redirect, Switch } from 'react-router-dom'; +import NewTodo from './containers/NewTodo/NewTodo'; +import TodoDetail from './components/TodoDetail/TodoDetail'; function App() { return ( -
-
+ +
+ + } /> + + + +

Not Found

} /> +
+
+
); } diff --git a/src/components/Todo/Todo.js b/src/components/Todo/Todo.js index e69de29..0bd2d30 100644 --- a/src/components/Todo/Todo.js +++ b/src/components/Todo/Todo.js @@ -0,0 +1,14 @@ +import React from 'react'; +import './Todo.css' + +const Todo = props => { + return ( +
+
+ {props.title} +
+ {props.done &&
} +
+ ) +} +export default Todo; \ No newline at end of file diff --git a/src/components/TodoDetail/TodoDetail.js b/src/components/TodoDetail/TodoDetail.js index e69de29..1763f74 100644 --- a/src/components/TodoDetail/TodoDetail.js +++ b/src/components/TodoDetail/TodoDetail.js @@ -0,0 +1,26 @@ +import React from 'react'; +import './TodoDetail.css' + +const TodoDetail = (props) => { + return ( +
+
+
+ Name: +
+
+ {props.title} +
+
+
+
+ Content: +
+
+ {props.content} +
+
+
+ ) +} +export default TodoDetail; \ No newline at end of file diff --git a/src/containers/TodoList/NewTodo/NewTodo.js b/src/containers/TodoList/NewTodo/NewTodo.js index e69de29..98ee874 100644 --- a/src/containers/TodoList/NewTodo/NewTodo.js +++ b/src/containers/TodoList/NewTodo/NewTodo.js @@ -0,0 +1,37 @@ +import React, { Componenet } from 'react'; +import './NewTodo.css' +import { Redirect } from 'react-router-dom'; + +class NewTodo extends Component { + state = { + title: '', + content: '', + submitted: false, + } + + postTodoHandler =() => { + const data ={ + title: this.state.title, content: this.state.content + }; + alert('Submitted\n' + data.title + '\n' + data.content); + this.setState( {submitted: true}); + } + + render() { + if (this.state.submitted) { + return + } + return( +
+

Add a Todo

+ + this.setState({ title: event.target.value})} /> + +