我想发送一封包含Node.js礼物的电子邮件我使用了Express-mailer模块,但它不能正常工作
app.post('/mail', function(req, res, next){
mailer.extend(app,{
from: req.body.email,
host:'smtp.gmail.com',
secureConnection: true,
port: 465,
transportMethod: 'SMTP',
auth: {
user: 'example@gmail.com',
pass: '**********'
}
});
app.mailler.send('email',{
to: 'test@hotmail.com',
subject: req.body.subject,
message: req.body.message
}, function(err){
if(err){
console.log('error');return
}
res.send('email sent');
});
});
错误:
TypeError:无法在C:\ Users \ Developpement \ mailer \ index.js:49:15回调时调用undefined方法'send'(C:\ Users \ Developpement \ mailer \ node_modules \ express \ lib \ router \ index.js:164:37)at param(C:\ Users \ Developpement \ mailer \ node_modules \ express \ lib \ router \ index.js:138:11)传递
答案 0 :(得分:1)
app.mailler.send
应为app.mailer.send
。
<强>更新强>
要解决第二个错误,&#34;错误:应用程序已经使用Express-Mailer&#34;进行了扩展,您必须将mailer.extend()
块移出路由并进入父作用域,其中它只会执行一次(并且只改变你的app对象一次)。