要使用AstroJS联系表格与Nodemailer,您可以按照以下步骤进行操作:
安装AstroJS和Nodemailer:
npm install astrojs nodemailer
创建一个AstroJS表单来收集联系表格数据。您可以使用AstroJS的表单组件来创建表单,并在提交时将数据发送到服务器。以下是一个简单的示例:
创建一个Express服务器来处理提交的联系表格数据并使用Nodemailer发送电子邮件。以下是一个简单的示例:
// server.js
const express = require('express');
const app = express();
const nodemailer = require('nodemailer');
// 配置Nodemailer传输器
const transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: '[email protected]',
pass: 'your-email-password'
}
});
// 处理联系表格提交的路由
app.post('/send-email', (req, res) => {
const { name, email, message } = req.body;
// 配置电子邮件选项
const mailOptions = {
from: '[email protected]',
to: '[email protected]',
subject: 'New Contact Form Submission',
text: `
Name: ${name}
Email: ${email}
Message: ${message}
`
};
// 发送电子邮件
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
console.error(error);
res.status(500).send('Error sending email');
} else {
console.log('Email sent: ' + info.response);
res.status(200).send('Email sent');
}
});
});
// 启动服务器
app.listen(3000, () => {
console.log('Server started on port 3000');
});
将AstroJS表单与服务器进行集成。在页面中导入AstroJS表单组件,并在提交时发送POST请求到服务器。以下是一个简单的示例:
通过以上步骤,您可以使用AstroJS联系表格与Nodemailer发送电子邮件。请确保在代码中替换您自己的邮箱地址和密码,并根据需要进行其他配置。