|
1 |
| -import React, { useState } from 'react'; |
| 1 | +import React, { useEffect, useState } from 'react'; |
2 | 2 | import { useTranslation } from 'react-i18next';
|
3 | 3 | import { Form, Field } from 'react-final-form';
|
4 | 4 | import { useDispatch } from 'react-redux';
|
@@ -34,26 +34,31 @@ function validateEmail(email) {
|
34 | 34 | }
|
35 | 35 |
|
36 | 36 | function SignupForm() {
|
37 |
| - const { t } = useTranslation(); |
| 37 | + const { t, i18n } = useTranslation(); |
38 | 38 |
|
39 | 39 | const dispatch = useDispatch();
|
40 | 40 | function onSubmit(formProps) {
|
41 | 41 | return dispatch(validateAndSignUpUser(formProps));
|
42 | 42 | }
|
43 | 43 | const [showPassword, setShowPassword] = useState(false);
|
44 | 44 | const [showConfirmPassword, setShowConfirmPassword] = useState(false);
|
| 45 | + const [formUpdateKey, setFormUpdateKey] = useState(false); |
45 | 46 | const handleVisibility = () => {
|
46 | 47 | setShowPassword(!showPassword);
|
47 | 48 | };
|
48 | 49 | const handleConfirmVisibility = () => {
|
49 | 50 | setShowConfirmPassword(!showConfirmPassword);
|
50 | 51 | };
|
| 52 | + useEffect(() => { |
| 53 | + setFormUpdateKey(!formUpdateKey); |
| 54 | + }, [i18n.language]); |
51 | 55 |
|
52 | 56 | return (
|
53 | 57 | <Form
|
54 | 58 | fields={['username', 'email', 'password', 'confirmPassword']}
|
55 | 59 | validate={validateSignup}
|
56 | 60 | onSubmit={onSubmit}
|
| 61 | + key={formUpdateKey} |
57 | 62 | >
|
58 | 63 | {({ handleSubmit, pristine, submitting, invalid }) => (
|
59 | 64 | <form className="form" onSubmit={handleSubmit}>
|
|
0 commit comments