Skip to content
Snippets Groups Projects
Commit 5b9f7c17 authored by Min Dong Hyeun's avatar Min Dong Hyeun
Browse files

HomeMake error-handling

parent 623fa847
No related branches found
No related tags found
No related merge requests found
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
"@testing-library/jest-dom": "^5.17.0", "@testing-library/jest-dom": "^5.17.0",
"@testing-library/react": "^13.4.0", "@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0", "@testing-library/user-event": "^13.5.0",
"prop-types": "^15.8.1",
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"react-router-dom": "^6.18.0", "react-router-dom": "^6.18.0",
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
"@testing-library/jest-dom": "^5.17.0", "@testing-library/jest-dom": "^5.17.0",
"@testing-library/react": "^13.4.0", "@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0", "@testing-library/user-event": "^13.5.0",
"prop-types": "^15.8.1",
"react": "^18.2.0", "react": "^18.2.0",
"react-dom": "^18.2.0", "react-dom": "^18.2.0",
"react-router-dom": "^6.18.0", "react-router-dom": "^6.18.0",
......
function Button({text}){ function Button({type,text}){
return( return(
<button <button
>{text} type = {type}
>
{text}
</button> </button>
); );
} }
......
function Input({type,value,onChange,placeholder}){ import PropTypes from "prop-types";
return(
function Input({ type, value, onChange, placeholder }) {
return (
<input <input
type={type} type={type}
placeholder={placeholder} placeholder={placeholder}
onChange={onChange} onChange={onChange}
value={value} value={value}
/> />
); );
} }
Input.propTypes = {
type: PropTypes.string.isRequired,
value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
onChange: PropTypes.func.isRequired,
placeholder: PropTypes.string,
}
export default Input; export default Input;
\ No newline at end of file
import Input from "../components/Input"; import Input from "../components/Input";
import Button from "../components/Button"; import Button from "../components/Button";
import { useState } from "react"; import { useState } from "react";
import { Link } from "react-router-dom"; import { useNavigate } from "react-router-dom";
import "../styles/HomeMake.css"; import "../styles/HomeMake.css";
function HomeMake() { function HomeMake() {
const [title, setTitle] = useState(""); const [title, setTitle] = useState("");
const [password,setPassword] = useState(""); const [password,setPassword] = useState("");
const navigate = useNavigate();
const onTitleChange = (event) => { const onTitleChange = (event) => {
setTitle(event.target.value); setTitle(event.target.value);
...@@ -14,10 +15,22 @@ function HomeMake() { ...@@ -14,10 +15,22 @@ function HomeMake() {
const onPasswordChange = (event) => { const onPasswordChange = (event) => {
setPassword(event.target.value); setPassword(event.target.value);
} }
const handleSubmit = (event)=>{
event.preventDefault();
if(title === ""){
return alert("Title을 입력하세요");;
}
else if(password === ""){
return alert("Password를 입력하세요");;
}
else{
navigate("/MeetingInfo");
}
}
return ( return (
<div className="center-container"> <div className="center-container">
<form> <form onSubmit={handleSubmit}>
<h1>When we meet?</h1> <h1>When we meet?</h1>
<Input <Input
type="text" type="text"
...@@ -33,11 +46,10 @@ function HomeMake() { ...@@ -33,11 +46,10 @@ function HomeMake() {
placeholder="관리용 Password" placeholder="관리용 Password"
/> />
<br/> <br/>
<Link to="/MeetingInfo"> <Button
<Button type="submit"
text="시작하기" text="시작하기"
/> />
</Link>
</form> </form>
</div> </div>
); );
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment