MobX를 사용하면 간단한 검증을 매우 쉽게 할 수 있습니다. 이와 같은 단일 필드의 경우 함수를 확인하는 간단한 방법은 다음과 같습니다.
구성 요소에 입력이 제출 된 경우에만 표시되는 오류 필드가 있습니다 (버튼 푸시 또는 관찰 클래스 (나는 비 장식 스타일을 사용)에서 무엇이든)
return <div>
<input placeholder="FirstName" type="text"
defaultValue={Contact.FirstName} onChange={(e) => handler(e)} />
{submitted && <span className="error-message">{Contact.FirstNameError}</span>}
</div>;
, 우리는 관찰로 필드를 정의하고, 계산 된 값과 같은 오류 메시지 클래스입니다.
class Contact {
constructor() {
extendObservable({
submitted: false,
FirstName: observable(),
FirstNameError: computed(() => {
if(this.FirstName.length < 10) {
return 'First name must be at least 10 characters long';
}
// further validation here
return undefined;
})
})
}
}
당신은 쉽게 단지 FirstNameError
에 값이 있는지 여부를 확인합니다 추가 hasError
계산 된 값을 추가 할 수 있습니다.
이 방법은 몇 개의 입력으로 확장됩니다. 무리가있는 경우 타사 라이브러리 또는 검증을 관리하기 위해 직접 작성하는 것과 같은 추상화를 조사하고 싶을 것입니다. 작은 구성을 기반으로 필요한 계산 된 속성을 생성하는 함수를 작성할 수 있습니다.