Javascript TypeError:NodeEmailer.createTransport不是函数
我正在尝试在我的nodejs应用程序中实现nodemailer来发送电子邮件 这是我的密码Javascript TypeError:NodeEmailer.createTransport不是函数,javascript,node.js,express,node-modules,nodemailer,Javascript,Node.js,Express,Node Modules,Nodemailer,我正在尝试在我的nodejs应用程序中实现nodemailer来发送电子邮件 这是我的密码 var express = require('express'); var nodemailer = require('node-mailer'); var app = express(); app.post('/contact/send', function(req, res) { var transporter = nodemailer.createTransport({ service:
var express = require('express');
var nodemailer = require('node-mailer');
var app = express();
app.post('/contact/send', function(req, res) {
var transporter = nodemailer.createTransport({
service: 'Gmail',
auth: {
user: 'myEmailIdHere',
pass: 'myPassword'
}
});
var mailOptions = {
from: 'myName <myEmailIdHere>',
to: 'myOtherEmailIdHere',
subject: 'Website Submission',
text: 'You have a submission with the following details... Name: ' + req.body.name + ' Email: ' + req.body.email + ' Message: ' + req.body.message,
html: '<p>You have a submission with the following details...</p><ul><li>Name: ' + req.body.name + '</li><li>Email: ' + req.body.email + '</li><li>Message: ' + req.body.message + '</li></ul>'
};
transporter.sendMail(mailOptions, function(error, info) {
if (error) {
console.log(error);
res.redirect('/');
} else {
console.log('Message Sent: ' + info.response);
res.redirect('/');
}
})
var express=require('express');
var nodemailer=require('node-mailer');
var-app=express();
应用程序发布('/contact/send',功能(请求、回复){
var transporter=nodeEmailer.createTransport({
服务:“Gmail”,
认证:{
用户:“myEmailIdHere”,
密码:“我的密码”
}
});
var mailpoptions={
发件人:'我的名字',
致:“myOtherEmailIdHere”,
主题:'网站提交',
text:'您有一份包含以下详细信息的提交…名称:'+req.body.Name+'电子邮件:'+req.body.Email+'消息:'+req.body.Message,
html:“您有一个包含以下详细信息的提交…- 名称:“+req.body.Name+”
电子邮件:“+req.body.Email+”- 消息:“+req.body.Message+”
”
};
transporter.sendMail(邮件选项,函数(错误,信息){
如果(错误){
console.log(错误);
res.redirect('/');
}否则{
console.log('发送的消息:'+信息响应);
res.redirect('/');
}
})
提交表单后,我得到的错误如下
“TypeError:NodeEmailer.createTransport不是函数”
有人能帮我找出如何使代码与NodeEmailr一起工作吗?和node mailer
是两个不同的模块。您应该使用正确的模块
var nodemailer = require('nodemailer');
另外,请确保使用npm i
和节点邮件程序安装的节点邮件程序是两个不同的模块。您应该使用正确的模块
var nodemailer = require('nodemailer');
另外,确保nodemailer是使用npmi
安装的
npm install node-mailer --save
这是哪个图书馆:
当您尝试遵循此库的说明时:
让您的代码正常工作
npm install nodemailer --save
然后需要模块作为
var nodemailer = require('nodemailer')
不要在节点mailer之间加连字符,因为这是一个不同的模块。您似乎已经这样做了
npm install node-mailer --save
这是哪个图书馆:
当您尝试遵循此库的说明时:
让您的代码正常工作
npm install nodemailer --save
然后需要模块作为
var nodemailer = require('nodemailer')
不要在节点mailer之间放置连字符,因为它是另一个模块。使用此选项
var nodemailer=require('nodemailer');使用此选项
var nodemailer=require('nodemailer');当然,我会再次尝试使用nodemailer。是的,它成功了。非常感谢。现在它没有显示错误,但邮件仍然没有被发送。有任何错误/响应吗?再看看它说的“连接超时”,然后它显示了“Message sent:250 2.0.0 OK”。但是我没有通过我的gmail帐户收到邮件。当然,我会要求NodeEmailer再试一次。是的,它成功了。非常感谢。现在它没有显示错误,但邮件仍然没有发送。有任何错误/响应吗?再看看它说的“连接超时”,然后它显示了“Message sent:250 2.0.0 OK”。但是我没有通过我的gmail帐户收到邮件。我在package.json“node mailer”的dependentials中有这一行:“*”这是因为您可能首先安装了node mailer,但正如您提到的@sidgate一样,nodemailer工作正常,所以这就足够了。您可能还想看看node mailer的这个官员,了解有关nodemailer的任何进一步澄清。我只是将它从node mailer更改为nodemailer。现在它没有显示错误。但是我的电子邮件id上仍然没有收到邮件。是否还有其他错误?似乎是因为互联网速度太慢。它现在工作得非常好。我在package.json“node mailer”的dependencies中有这一行:“*”这是因为您可能首先安装了node mailer,但正如您提到的@sidgate一样,nodemailer工作正常,所以这就足够了。您可能还想看看node mailer的这个官员,了解有关nodemailer的任何进一步澄清。我只是将它从node mailer更改为nodemailer。现在它没有显示错误。但是我的邮箱id上还没有收到邮件。还有其他错误吗?看起来,只是网速太慢了。现在一切正常。