React에서 Netlify 문의 양식을 추가하는 방법
다음과 같이 표시됩니다.
참고: this one 및 this 이라는 매우 유용한 두 기사를 사용하여 안내했습니다.
1단계: Netlify 속성이 있는 양식 추가
name
요소method
, data-netlify
및 form
속성을 살펴보십시오.value
이며 양식의 이름인 연락처와 동일해야 합니다.<Container maxWidth='sm'>
<h2>CONTACT</h2>
<Card>
<form
name="contact"
method="POST"
data-netlify="true"
>
<input type="hidden" name="form-name" value="contact" />
<TextField id="standard-basic" label="name" name="name" />
<TextField id="standard-basic" label="email" name="email" />
<TextField multiline id="standard-basic" label="message" name="message" />
<Button type="submit">Send</Button>
</form>
</Card>
</Container>
2단계: index.html 파일에 다른 양식 추가
index.html
파일의 여는 태그<body>
바로 뒤에 추가할 것을 권장합니다.action
속성은 리디렉션에 사용됩니다. 다음 단계에서 이에 대해 자세히 알아보세요.<!-- A little help for the Netlify post-processing bots -->
<form name="contact" netlify netlify-honeypot="bot-field" action='/' hidden>
<input type="text" name="name" />
<input type="email" name="email" />
<textarea name="message"></textarea>
</form>
3단계: 성공 메시지 추가 및 리디렉션 방지
useEffect
및 useState
와 <h2>
태그 아래의 메시지action
요소 내부의 form
속성이 사용자를 올바른 경로로 안내하는지 확인하십시오. 내 경우에는 "/contact/?success=true"
연락처가 내 경로와 내 구성 요소의 이름입니다. 참고: 이 코드의 대부분은 소개에서 언급한 기사 중 하나에서 가져왔습니다.
//Final code
export default function Contact() {
const [success, setSuccess] = useState(false);
useEffect(() => {
if ( window.location.search.includes('success=true') ) {
setSuccess(true);
}
}, []);
return (
<Container maxWidth="sm">
<h2>CONTACT</h2>
{success && (
<p style={{ color: "green" }}>Thanks for your message! </p>
)}
<Card>
<form
name="contact"
method="POST"
action="/contact/?success=true"
data-netlify="true"
>
<input type="hidden" name="form-name" value="contact" />
<TextField id="standard-basic" label="name" name="name" /> <br />
<TextField id="standard-basic" label="email" name="email" /> <br />
<TextField
multiline
id="standard-multiline-static"
label="message"
name="message"
/>
<br />
<div>
<Button type="submit">Send</Button>
</div>
</form>
</Card>
</Container>
);
}
4단계: 마지막으로 양식 제출 확인
그게 다야. 잘만되면 예상대로 작동했습니다. 그렇지 않은 경우 알려주시면 방법을 찾아보겠습니다 😉
Reference
이 문제에 관하여(React에서 Netlify 문의 양식을 추가하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/deboragaleano/how-to-create-a-netlify-contact-form-in-react-5bma텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)