【问题标题】:Nodemailer error when required需要时出现 Nodemailer 错误
【发布时间】:2017-08-02 04:52:37
【问题描述】:

我的简历网站快完成了,我刚刚完成了一个“联系我”表单,该表单应该会向我发送一封包含纯文本的电子邮件。

这是 Jade 中的样子:

div.contact-email-box
    form(id='contact-form' action='/' method='post')
        h3 Contact me
        div
            label
                span Name:
                input(placeholder='e.g: Mark' type='text' tabindex='1' required autofocus)
        div
            label
                span Email:
                input(placeholder='e.g: mark@example.com' type='email' tabindex='2' required)
        div
            label
                span Message:
                textarea(tabindex='3' required)
        div
            button(name='Submit' type='submit' id='contact-submit') Send Email

这是我在server.js 中捕获POST 的地方:

var express = require('express')
              , app = express()
var nodemailer = require('nodemailer')

app.post('/', function(req, res) {
})

如您所见,它没有执行任何操作,但我收到以下错误:

/home/kade_c/website/node_modules/nodemailer/lib/mailer/index.js:31 编译:[(...args) => this._convertDataImages(...args)], ^^^

SyntaxError: Unexpected token ...

这种情况只有在我 require('nodemailer') 时才会发生,即使它已正确安装到我的 node_modules

这是一个已知的错误吗?我该如何解决?

【问题讨论】:

    标签: javascript node.js nodemailer


    【解决方案1】:

    对我来说似乎是节点版本问题。扩展运算符在早期版本的 Node 上无效,请检查以确保您运行的版本支持 ES6 功能。

    【讨论】:

      【解决方案2】:

      Node.js 版本 6+ 是必须的。使用以下命令检查您的 Node 版本:

      节点--版本

      如果您未满 6 岁,则必须升级。

      您可能会收到另一条错误消息,指示您登录帐户。在这种情况下,请转到您的电子邮件收件箱,您会看到来自 Google 的一条消息,其中包含指向用于设置安全性较低的应用权限的页面的链接。

      【讨论】:

        【解决方案3】:

        Nodemailer 与 Node 版本 6 或更高版本兼容(根据 https://nodemailer.com/about/#requirements

        所以请按照以下步骤升级节点:

        1* sudo npm cache clean -f

        2* sudo npm install -g n

        3* sudo n 稳定

        4* sudo ln -sf /usr/local/n/versions/node/5.4.1/bin/node /usr/bin/node (粗体文本/版本应该是在上述步骤中安装的。)

        即如果安装了 8.1.1 然后执行 sudo ln -sf /usr/local/n/versions/node/8.1.1/bin/node /usr/bin/node

        node -v(现在应该显示更新版本)

        【讨论】:

          猜你喜欢
          • 2021-06-18
          • 1970-01-01
          • 2014-03-21
          • 2018-02-25
          • 2021-11-29
          • 2011-07-17
          • 1970-01-01
          • 2021-10-22
          • 2019-05-03
          相关资源
          最近更新 更多