当前位置: 首页 > 知识库问答 >
问题:

运行firebase云函数时出现错误:“找不到模块”

谭翰海
2023-03-14
const functions = require('firebase-functions');
var nodemailer = require('nodemailer');
// const express=require('express');

var transporter=nodemailer.createTransport('smtps://username@gmail.com:password5@smtp.gmail.com');
exports.sendMail=functions.https.onRequest((req,res)=>{
    var mailOptions={
        to: 'receiver@gmail.com',
        subject: 'Test Mail',
        html: 'Testing with Node.js'
    }
    transporter.sendMail(mailOptions,function(err,response){
        if(err){
            res.send('Mail not sent');
        }
        else{
            res.send('Mail sent');
        }
    });
});

我正在从Firebase应用程序发送邮件。根据我在使用Firebase web app发送电子邮件时提出的问题,我使用Firebase云功能发送邮件。上面的代码是我的索引。js文件。

这是我的包裹。json文件

{
  "name": "functions",
  "description": "Cloud Functions for Firebase",
  "scripts": {
    "serve": "firebase serve --only functions",
    "shell": "firebase experimental:functions:shell",
    "start": "npm run shell",
    "deploy": "firebase deploy --only functions",
    "logs": "firebase functions:log"
  },
  "dependencies": {
    "firebase-admin": "~5.4.2",
    "firebase-functions": "^0.7.1",
    "sendgrid": "^5.2.3"
  },
  "private": true
}

共有1个答案

黄俊誉
2023-03-14

您缺少依赖项中的nodemailer。只要加上它...

npm install nodemailer --save

将导致(其中x.x.x是适当的版本)

"dependencies": {
  "firebase-admin": "~5.4.2",
  "firebase-functions": "^0.7.1",
  "nodemailer": "^x.x.x",
  "sendgrid": "^5.2.3"
}

这很可能适用于您的开发,因为您实际上已经在本地或全局安装了nodemailer,但是正如错误指出的那样,它在远程机器上不存在

找不到模块“nodeEmailer”

 类似资料:
  • 我的包裹。json就是这样。 我的index.js是 你能告诉我密码有什么问题吗?提前谢谢。

  • 我正在构建一个有角度的Firebase web应用程序,由于一些复杂的查询,我开始从Firebase中寻找云函数。 我的项目看起来像: 我遵循了经典教程:https://firebase.google.com/docs/functions/get-started 但是使用Firebase部署仅功能时的问题: 任何想法?我做错什么了吗? 版本:“firebase”:“^5.0.4”firebase函

  • 我已经设置和快速服务器上运行Firebase云功能。现在,我试图使用CLI使用“Firebase部署-仅函数”将其部署到Firebase,但每次都失败,说有一个意外的令牌。我怀疑在index.js文件中使用异步箭头函数有问题,但我不确定,我也需要它们来完成我的项目。 这是索引。js文件: 以下是我在尝试运行firebase deploy(仅限函数)时遇到的错误: ==部署到“homunculus-

  • 问题内容: 我有一个Java项目,当从Eclipse中运行它时,它的运行情况很好。当我尝试将其导出到一个或创建.jar文件时,但是当我双击它以尝试运行该程序时,它给我一个错误,提示说 如前所述,我尝试导出到这两个JAR选项,并指定了main方法所在的正确类,当我查看文件中的实际文件时,一切似乎都井井有条-清单看起来像: 并且在文件夹中。有一个包含我的包名称的文件夹,其中包含所有.class文件,包

  • 找不到模块“js yaml”要求堆栈: D: \ REACT NATIVE\portfolio\node\U modules\cosmiconfig\dist\loaders。js

  • 我已经成功地部署了这三个功能几个月了,现在它突然开始绊倒我。我已经有一段时间没有更改节点、npm或Firebase cli版本了。我升级了函数目录中的npm包,急于解决这个问题,但运气不好。为什么会发生这种情况?回购(悬浮滑板-v2分支):https://github.com/gdgfresno/valleydevfest2017/tree/hoverboard-v2/functions Ubun