maantje/react-email

为 Laravel 提供的 React 邮件组件

v0.4.0 2024-04-03 20:26 UTC

This package is auto-updated.

Last update: 2024-09-03 21:33:52 UTC


README

此包允许您使用 Laravel 轻松发送 React 邮件

安装

composer require maantje/react-email
yarn add @j4mie/react-email

使用方法

安装 React 邮件(自动手动)。

在 emails 目录中创建一个邮件,例如 new-user.tsx,确保组件是默认导出。

import { Html } from '@react-email/html';
import { Text } from '@react-email/text';
import * as React from 'react';

export default function Email({ user }) {
    return (
        <Html>
            <Text>Hello, {user.name}</Text>
        </Html>
    );
}

在您的 Laravel .env 中设置邮件目录。

REACT_EMAIL_DIRECTORY="/my/absolute/path/to/react-email-starter/emails/"

创建 Laravel 的可邮件类。

php artisan make:mail NewUser

从 ReactMailable 继承而不是 Mailable。

use App\Models\User;
use Maantje\ReactEmail\ReactMailable;

class NewUser extends ReactMailable
{
    public function __construct(public User $user) 
    {
        // public properties will be passed as props to the React email component
        // Alternatively use the with property of content
    }
    
    public function envelope()
    {
        return new Envelope(
            subject: 'New User',
        );
    }

    public function content()
    {
        return new Content(
            view: 'new-user', // name of the component file without extension
        );
    }
}

测试

./vendor/bin/pest

安全性

如果您发现任何与安全性相关的问题,请通过作者邮箱联系,而不是使用问题跟踪器。

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件