Надіслати приклад коду електронної пошти React у 2024

Надсилайте електронні листи веб-додатків React із шаблонами HTML, CSS і JSX, прикладами та готовою інтеграцією SMTP.

Встановлення та вимоги

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

npm install @react-email/render nodemailer

Вихідний код і приклад

Створіть шаблон електронної пошти за допомогою a .jsx або a .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.