검증
검증은 StandardSchemaV1, 즉 최소 ~standard.validate 계약을 중심으로 동작합니다. CreateFormOptions.schema는 전체 폼을 검증합니다. registerFieldSchema(path, options) 또는 어댑터 옵션은 한 필드에 field-local 스키마를 붙이며, 그 필드에서는 폼 전체 스키마보다 우선합니다.
const unregister = form.registerFieldSchema('email', {
schema: emailSchema,
schemaOptions: { libraryOptions: { mode: 'strict' } },
});
const validEmail = await form.trigger('email');
const validForm = await form.trigger();
unregister();validateOn은 change, blur, submit, manual을 받습니다. manual은 직접 trigger()를 호출하는 흐름을 뜻하며, 제출 검증을 막는 옵션은 아닙니다. Standard Schema issue에 경로가 있으면 필드 오류가 되고, 루트 issue는 애플리케이션의 UI 관례에 맞춰 폼 전체 피드백으로 다루면 됩니다.
실무 사용 팁
추상화를 만들 때는 이 레퍼런스를 가까이 두세요. 레퍼런스는 패키지가 무엇을 노출하는지 설명하고, 가이드는 그 조각들을 조합하는 한 가지 방식을 보여줍니다. 어떤 도우미가 FieldPathInput, 검증 시점, 배열 재배치를 감춘다면 그 도우미도 같은 정밀도로 문서화하세요. 그래야 나중에 문자열, 튜플, 안정적인 키 중 무엇을 기대하는지 유지보수자가 알 수 있습니다.