import { useEffect, useState } from 'react' import { useForm, type SubmitHandler } from 'react-hook-form' import { getCookie } from 'typescript-cookie' import { DeletePost } from './api' type Inputs = { id: number, hash: string } export const Delete = () => { const { register, handleSubmit, watch, setValue, formState: { errors }, } = useForm() const onSubmit: SubmitHandler = (data) => { console.log(data) DeletePost(data.id, data.hash).then( e => { if (e) { alert("成功刪除") } } ) } let [saved, setSaved] = useState<{ id: number, hash: string }[]>([]) useEffect(() => { let cred = getCookie("post_cred") if (cred) { let parsed: { id: number, hash: string }[] = JSON.parse(cred) console.log(parsed) setSaved(parsed) } }, []) let current_id = watch("id") let mem_hash = saved.find(e => e.id == current_id) useEffect(() => { if (mem_hash) { setValue("hash", mem_hash.hash) } }, [mem_hash]) return ( <>
{/* register your input into the hook by invoking the "register" function */}

刪除匿名

{saved.map((e, it) => )} {/* errors will return when field validation fails */} {errors.id && This field is required} {errors.hash && This field is required}
) }