環境 React Hook Form v17 useForm の setError エラーを手動で設定できる。 setError('registerInput', { type: 'custom', message: 'custom message' }) 何がしたかったのか emailの入力値がすでにDBに登録されている場合に、他のバリデーションと同様にエラー表示し、submitさせないようにしたい。 入力フォーム(input要素)にonBlurを設定 入力値をwatchで取得して存在確認用のAPIを呼ぶ APIの結果によってエラーを設定する(ここでsetErrorを用いる) 躓いた点 setErrorを設定するだけではsubmitが走ってしまう。 似たようなことで困っているgithubのissue。 そもそもバリデーションを設定するものではない。本来の使いどころは以下のような場合の時。