reactjs - 模块未定义 Nodemailer
问题描述
我是新手,我想知道为什么我的 SendMail.mjs 模块在下面不起作用。
终端说我的 sendEmail 没有定义。
这是什么意思?
发送邮件.mjs
import nodeMailer from 'nodemailer';
export default sendEmail((req, res) => {
let data = req.body
let smtpTransport = nodeMailer.createTransport({
host: 'smtp.gmail.com',
port: 587,
secure: false,
requireTLS: true,
auth: {
user: 'xxxxxxxxxxxxxxxxxxx',
pass: 'xxxxxxxxxxxxxxxxxx'
}
})
let mailOptions = {
from: data.mailFilled,
to: `xxxxxxxxxxxxxxx`,
subject: `Message from ${data.nameFilled}`,
html: `
<ul>
<li>Name: ${data.nameFilled}</li>
<li>Mail: ${data.mailFilled}</li>
</ul>
<h3>Message</h3>
<ul>
<li>Message: ${data.messageFilled}</li>
</ul>
`
};
smtpTransport.sendMail(mailOptions, (error, response) => {
if (error) {
res.send(error)
} else {
res.send('Success')
}
})
smtpTransport.close();
})
我在客户端使用 axios
服务器.js
const express = require('express');
const cors = require('cors');
const app = express();
import sendEmail from './sendMail.mjs';
const PORT = process.env.PORT || 3001;
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.use(cors());
app.get('/', (req, res) => {
res.send('GET request to the homepage');
})
app.post('/api/forma', sendEmail(req, res));
app.listen(PORT, () => {
console.log(`server starting at port ${PORT}`)
})
非常感谢您提前
解决方案
您可以尝试替换import sendEmail from './sendMail.mjs';
为const sendMail = require("./sendMail.mjs")
吗?
推荐阅读
- artifactory - 我应该如何在 bintray/jcenter 中为 maven 项目组织 bintray 包?
- ruby-on-rails - 使用 will_paginate 在 erb Rails 中显示最后一条记录
- javascript - 如何在 SweetAlert2 中创建多语言弹出消息?
- javascript - 输入范围不更新
- mysql - 如何编写查询sql查询
- suitecrm - SuiteCRM 与第三方 OAUTH2 服务器的身份验证
- vue.js - Jest spyOn 报告一个方法被调用的对象与实际调用的对象不同
- c - 在 C 中将“char”转换为“int”的逻辑
- php - ASANA API 在 PHP 脚本中显示所有任务
- java - 使用正则表达式替换未知文本