mailto: link).email, subject and body props to create a <a> element with an appropriate href attribute.encodeURIcomponent to safely encode the subject and body into the link URL.children as its content.const Mailto = ({ email, subject = '', body = '', children }) => {
let params = subject || body ? '?' : '';
if (subject) params += `subject=${encodeURIComponent(subject)}`;
if (body) params += `${subject ? '&' : ''}body=${encodeURIComponent(body)}`;
return <a href={`mailto:${email}${params}`}>{children}</a>;
};
ReactDOM.render( <Mailto email="foo@bar.baz" subject="Hello & Welcome" body="Hello world!"> Mail me! </Mailto>, document.getElementById('root') );
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️