import React, { useCallback, useEffect, useRef, useState } from "react"; import { useSelector } from "react-redux"; import { FormControl } from "@material-ui/core"; import ReCaptcha from "../component/Login/ReCaptcha"; import { defaultValidate, useStyle } from "./useCaptcha"; const Recaptcha = ({ captchaRef, setLoading }) => { const classes = useStyle(); const [captcha, setCaptcha] = useState(""); const reCaptchaKey = useSelector( (state) => state.siteConfig.captcha_ReCaptchaKey ); useEffect(() => { captchaRef.current.captchaCode = captcha; }, [captcha]); useEffect(() => setLoading(false), []); return (
setCaptcha(value)} id="captcha" name="captcha" />
{" "}
); }; export default function useRecaptcha(setLoading) { const isValidate = useRef({ isValidate: true, }); const captchaParamsRef = useRef({ captchaCode: "", }); const CaptchaRender = useCallback( function RecaptchaRender() { return ( ); }, [captchaParamsRef, setLoading] ); return { isValidate, validate: defaultValidate, captchaParamsRef, CaptchaRender, }; }