diff --git a/frontend/src/app/fertilizer/_components/FertilizerEditPage.tsx b/frontend/src/app/fertilizer/_components/FertilizerEditPage.tsx index 5f95e5a..1701ef9 100644 --- a/frontend/src/app/fertilizer/_components/FertilizerEditPage.tsx +++ b/frontend/src/app/fertilizer/_components/FertilizerEditPage.tsx @@ -143,7 +143,6 @@ export default function FertilizerEditPage({ planId }: { planId?: number }) { }; const removeFertilizer = (id: number) => { - if (!confirm('この肥料を計画から削除しますか?')) return; setPlanFertilizers((prev) => prev.filter((f) => f.id !== id)); setCalcSettings((prev) => prev.filter((s) => s.fertilizer_id !== id)); const dropCol = (m: Matrix): Matrix => { diff --git a/frontend/src/app/fertilizer/masters/page.tsx b/frontend/src/app/fertilizer/masters/page.tsx index f8e5f78..6ba10b6 100644 --- a/frontend/src/app/fertilizer/masters/page.tsx +++ b/frontend/src/app/fertilizer/masters/page.tsx @@ -94,7 +94,6 @@ export default function FertilizerMastersPage() { }; const handleDelete = async (id: number, name: string) => { - if (!confirm(`「${name}」を削除しますか?`)) return; setDeleteError(null); try { await api.delete(`/fertilizer/fertilizers/${id}/`); diff --git a/frontend/src/app/fertilizer/page.tsx b/frontend/src/app/fertilizer/page.tsx index 7e98a63..14a4082 100644 --- a/frontend/src/app/fertilizer/page.tsx +++ b/frontend/src/app/fertilizer/page.tsx @@ -20,6 +20,7 @@ export default function FertilizerPage() { }); const [plans, setPlans] = useState([]); const [loading, setLoading] = useState(true); + const [deleteError, setDeleteError] = useState(null); useEffect(() => { localStorage.setItem('fertilizerYear', String(year)); @@ -39,13 +40,13 @@ export default function FertilizerPage() { }; const handleDelete = async (id: number, name: string) => { - if (!confirm(`「${name}」を削除しますか?`)) return; + setDeleteError(null); try { await api.delete(`/fertilizer/plans/${id}/`); await fetchPlans(); } catch (e) { console.error(e); - alert('削除に失敗しました'); + setDeleteError(`「${name}」の削除に失敗しました`); } }; @@ -106,6 +107,14 @@ export default function FertilizerPage() { + {deleteError && ( +
+ + {deleteError} + +
+ )} + {loading ? (

読み込み中...

) : plans.length === 0 ? (