Skip to content

trigger

폼 전체에 걸쳐 유효성 검사 실행

trigger: (name?: string | string[]) => Promise<boolean>

폼 또는 입력값의 유효성 검사를 수동으로 트리거합니다. 이 메서드는 의존성 유효성 검사(한 입력값의 유효성 검사가 다른 입력값에 의존하는 경우)가 있을 때도 유용합니다.

Props


이름타입설명예시
nameundefined모든 필드에 대한 유효성 검사를 트리거합니다.trigger()
stringname으로 특정 필드 값에 대한 유효성 검사를 트리거합니다.trigger("yourDetails.firstName")
string[]name으로 여러 필드에 대한 유효성 검사를 트리거합니다.trigger(["yourDetails.lastName"])
shouldFocusboolean에러 설정 시 입력 필드에 포커스를 맞출지 여부를 결정합니다. 이 기능은 입력 필드의 참조가 등록된 경우에만 작동하며, 커스텀 등록에는 작동하지 않습니다.trigger('name', { shouldFocus: true })
규칙

렌더링 최적화는 string 타입의 페이로드로 단일 필드 이름을 대상으로 할 때만 적용됩니다. arrayundefined를 사용하여 트리거하면 전체 폼 상태가 리렌더링됩니다.

예제:


import React from "react"
import { useForm } from "react-hook-form"
type FormInputs = {
firstName: string
lastName: string
}
export default function App() {
const {
register,
trigger,
formState: { errors },
} = useForm<FormInputs>()
return (
<form>
<input {...register("firstName", { required: true })} />
<input {...register("lastName", { required: true })} />
<button
type="button"
onClick={() => {
trigger("lastName")
}}
>
Trigger
</button>
<button
type="button"
onClick={() => {
trigger(["firstName", "lastName"])
}}
>
Trigger Multiple
</button>
<button
type="button"
onClick={() => {
trigger()
}}
>
Trigger All
</button>
</form>
)
}
import React from "react"
import { useForm } from "react-hook-form"
export default function App() {
const {
register,
trigger,
formState: { errors },
} = useForm()
return (
<form>
<input {...register("firstName", { required: true })} />
<input {...register("lastName", { required: true })} />
<button
type="button"
onClick={async () => {
const result = await trigger("lastName")
// const result = await trigger("lastName", { shouldFocus: true }); 입력 필드에 포커스를 맞출 수 있음
}}
>
Trigger
</button>
<button
type="button"
onClick={async () => {
const result = await trigger(["firstName", "lastName"])
}}
>
Trigger Multiple
</button>
<button
type="button"
onClick={() => {
trigger()
}}
>
Trigger All
</button>
</form>
)
}

비디오


아래 비디오는 trigger API를 자세히 설명합니다.

여러분의 지원에 감사드립니다

React Hook Form이 프로젝트에서 유용하다면, GitHub에서 스타를 눌러 지원해 주세요.