maantje / react-email
为 Laravel 提供的 React 邮件组件
v0.4.0
2024-04-03 20:26 UTC
Requires (Dev)
- orchestra/testbench: ^7.20 || ^8.0 || ^9.0
- pestphp/pest: ^1.20 || ^2.0
README
此包允许您使用 Laravel 轻松发送 React 邮件。
安装
composer require maantje/react-email yarn add @j4mie/react-email
使用方法
在 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)。有关更多信息,请参阅 许可证文件。