Отправить пример кода электронной почты React в 2024

Отправляйте электронные письма веб-приложений React с шаблонами HTML, CSS и JSX, примерами и готовой интеграцией SMTP.

Установка и требования

Вам нужно будет установить @react-email/render а также nodemailer нпм-зависимости:

npm install @react-email/render nodemailer

Исходный код и пример

Создайте свой шаблон электронной почты с помощью .jsx или .js файл:

// email.jsx
import * as React from 'react';
import { Html } from '@react-email/html';
import { Button } from '@react-email/button';

export function Email(props) { const { url } = props;

return ( <Html lang="en"> <Button href={url}>Visit our website</Button> </Html> ); }

В этом примере мы используем Почтовая программа заметок библиотека и ее официальный спонсор Пересылать сообщения электронной почты для отправки и предварительного просмотра исходящей почты.

Вам нужно будет Создать пароль для отправки исходящей почты – пожалуйста, следуйте нашим Руководство по отправке электронной почты с помощью пользовательского домена SMTP.

// app.js
import { render } from '@react-email/render';
import nodemailer from 'nodemailer';
import { Email } from './email';

const transporter = nodemailer.createTransport({ host: 'smtp.forwardemail.net', port: 465, secure: true, auth: { // TODO: replace user and pass values from: // <https://forwardemail.net/guides/send-email-with-custom-domain-smtp> user: 'you@example.com', pass: '****************************' }, });

const html = render(Email({ url: "https://example.com" }));

const options = { from: 'you@example.com', to: 'user@gmail.com', subject: 'hello world', html };

transporter.sendMail(options);

Запустите приложение, чтобы отправить электронное письмо:

node app

Теперь вы можете перейти к Моя учетная запись → Электронная почта чтобы увидеть статус доставки электронной почты в режиме реального времени, журналы доставки электронной почты и предварительный просмотр HTML/открытого текста/вложений.

P.S. 🎉 Вы также можете предварительный просмотр писем в браузерах и симуляторе iOS а также создавать шаблоны электронной почты с помощью Node.js.