import React, { useState } from "react"; import todoApi from "../../api/todoApi"; const TodoForm = ({ onTaskCreated }) => { const [formData, setFormData] = useState({ title: "", description: "", due_date: "", tags: "", }); const [expanded, setExpanded] = useState(false); const handleChange = (e) => { setFormData((prev) => ({ ...prev, [e.target.name]: e.target.value, })); }; const handleSubmit = async (e) => { e.preventDefault(); const tagList = formData.tags.trim() !== "" ? formData.tags.split(",").map((tag) => tag.trim()) : []; try { await todoApi.post("/api/todo/tasks/", { title: formData.title, description: formData.description, due_date: formData.due_date === "" ? null : formData.due_date, tags: tagList, }); setFormData({ title: "", description: "", due_date: "", tags: "" }); setExpanded(false); onTaskCreated(); } catch (err) { console.error("등록 실패:", err.response?.data || err.message); alert("등록 실패: " + JSON.stringify(err.response?.data)); } }; const handleCancel = () => { setFormData({ title: "", description: "", due_date: "", tags: "" }); setExpanded(false); }; return (
); }; export default TodoForm;