簡體   English   中英

formspree 如何使用 preventDefault()?

[英]How with formspree use preventDefault()?

我正在努力解決單擊提交后我的反應表單不會重置的問題。 我正在使用 antd 表單和 formspree 發送郵件。 提交表單后,如何使用非重新加載頁面管理用於重置輸入字段值的代碼?

const [token, setToken] = useState<string>('');
  const [state, handleSubmit] = useForm('xxxxxxxx');

  if (state.succeeded) {
    formRef.current.message.success('Message sent');
  }

  return (
    <Wrapper>
      <MessageForm
        ref={formRef}
        name='nest-messages'
        onFinish={handleSubmit}
        validateMessages={validateMessages}
      >
        {FormItems.map((item) => (
          <Form.Item
            key={item.name}
            name={['user', item.name]}
          >
            {item.inputType}
          </Form.Item>
        ))}

        <Form.Item>
          <HCaptcha
            sitekey='xxxxxxxxxx-xxxx-xxxx-xxxxxxxxx'
            onVerify={setToken}
            ref={captchaRef}
          />
          <SendButton type='primary' htmlType='submit' disabled={!token}>
            Wyślij wiadomość
          </SendButton>
        </Form.Item>
      </MessageForm>

antd 有一個resetFields選項。 你可以在 handleSubmit function 中做類似的事情:

formRef.current.resetFields();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM