2025年发送 React 电子邮件代码示例

使用 HTML、CSS 和 JSX 模板、示例以及 SMTP 生产就绪集成发送 React Web 应用程序电子邮件。

安装和要求

您将需要安装 @react-email/rendernodemailer npm 依赖项:

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>
  );
}

在这个例子中,我们使用**Nodemailer库及其官方赞助商转发电子邮件**来发送和预览出站邮件。

您需要生成密码才能发送外发邮件 - 请遵循我们的**使用自定义域名发送电子邮件 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/纯文本/附件预览。

附言:tada:您还可以**在浏览器和 iOS 模拟器中预览电子邮件使用 Node.js 创建电子邮件模板**。