๐Ÿ–ฅFrontEnd/React

๊ฒŒ์‹œ๊ธ€ ์˜ฌ๋ฆฌ๊ณ  input ์ฐฝ ๋น„์›Œ์ฃผ๋Š” ๋ฐฉ๋ฒ•

hellohailie 2022. 7. 23. 15:58

 

 

๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ  (๋ฐ์ดํ„ฐ๋ฅผ submit ํ•˜๊ณ ) ์ž…๋ ฅ๋œ ๊ฒƒ ์ง€์šฐ๊ธฐ

์–‘๋ฐฉํ–ฅ ๋ฐ”์ธ๋”ฉ์„ ์‚ฌ์šฉํ•˜์ž

๋ณ€๊ฒฝ๋˜๋Š” ์ž…๋ ฅ๊ฐ’๋งŒ ์ˆ˜์‹ ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์ž…๋ ฅ์— ์ƒˆ๋กœ์šด ๊ฐ’์„ ๋‹ค์‹œ ์ „๋‹ฌํ•  ์ˆ˜๋„ ์žˆ๋‹ค!! ๊ทธ๋ž˜์„œ ํ”„๋กœ๊ทธ๋žจ์— ๋”ฐ๋ผ ์ž…๋ ฅ๊ฐ’์„ ์žฌ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

const [enteredDate, setEnteredDate] = useState(new Date());
const [enteredWeight, setEnteredWeight] = useState("");

์ƒํƒœ ๋ณ€๊ฒฝ์„ ๊ด€๋ฆฌํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋˜๋Š”๋ฐ, 

 

const submitHandler = async (event) => {
    event.preventDefault();

    const inputData = {
      date: new Date(enteredDate),
      weight: enteredWeight,
      photo: enteredPhoto,
      exercise: enteredExercise,
      story: enteredStory,
    };

    const response = await axios.post("/data", inputData);
    props.setData(response.data);
  
    setEnteredDate(new Date());
    setEnteredWeight("");
    setEnteredPhoto("");
    setEnteredExercise("");
    setEnteredStory("");
  };

๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•ด์ฃผ๊ณ , ์ƒํƒœ ๋ณ€๊ฒฝํ•จ์ˆ˜๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ์จ์ฃผ๊ณ , 

 

 

<label>๋‚ ์งœ</label>
            <input
              type='date'
              min='2019-01-01'
              max='2022-12-31'
              value={enteredDate}
              onChange={dateChangeHandler}
            />

 

input์— value๋กœ ํ˜„์žฌ ๊ฐ’์„ ์ฃผ๋ฉด๋œ๋‹ค. 

 

๐Ÿ˜ƒ ์ž˜๋ชป๋œ ๊ฐœ๋… ์ „๋‹ฌ์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ €์˜ ์„ฑ์žฅ์— ํฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค๐Ÿค“