Skip to content

Commit 8dd1e81

Browse files
committed
Fix: async validation errors stay visible when unrelated fields are edited
1 parent 2b41306 commit 8dd1e81

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

client/modules/User/components/SignupForm.jsx

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,9 @@ function SignupForm() {
7272
function onSubmit(formProps) {
7373
return dispatch(validateAndSignUpUser(formProps));
7474
}
75+
function shouldShowError(meta) {
76+
return (meta.touched || meta.submitFailed) && meta.error;
77+
}
7578

7679
return (
7780
<Form
@@ -102,7 +105,7 @@ function SignupForm() {
102105
autoCapitalize="none"
103106
{...field.input}
104107
/>
105-
{field.meta.touched && field.meta.error && (
108+
{shouldShowError(field.meta) && (
106109
<span className="form-error" aria-live="polite">
107110
{field.meta.error}
108111
</span>
@@ -124,7 +127,7 @@ function SignupForm() {
124127
autoComplete="email"
125128
{...field.input}
126129
/>
127-
{field.meta.touched && field.meta.error && (
130+
{shouldShowError(field.meta) && (
128131
<span className="form-error" aria-live="polite">
129132
{field.meta.error}
130133
</span>
@@ -160,7 +163,7 @@ function SignupForm() {
160163
)}
161164
</button>
162165
</div>
163-
{field.meta.touched && field.meta.error && (
166+
{shouldShowError(field.meta) && (
164167
<span className="form-error" aria-live="polite">
165168
{field.meta.error}
166169
</span>
@@ -196,7 +199,7 @@ function SignupForm() {
196199
)}
197200
</button>
198201
</div>
199-
{field.meta.touched && field.meta.error && (
202+
{shouldShowError(field.meta) && (
200203
<span className="form-error" aria-live="polite">
201204
{field.meta.error}
202205
</span>

0 commit comments

Comments
 (0)