调用Firebase Function会引发错误-错误TypeError:Gb.functions不是函数

问题描述

我最近刚刚开始使用Firebase Functions,希望在运行NG Build --Prod之后收到以下错误消息的帮助:

错误类型错误:Gb.functions不是函数

错误消息非常奇怪的是,我在本地主机上没有收到该消息,并且在运行NG Serve --Open时可以无错误调用firebase函数

当我单击“测试”按钮时,我希望将电子邮件发送到我的收件箱中。

您能提供的任何见解将不胜感激!

谢谢

<!-- begin snippet: js hide: false console: true babel: false -->
<button (click)="test()">Test</button>
const functions = require('firebase-functions');
const nodemailer = require("nodemailer");
const express = require("express");
const app = express();
const admin = require('firebase-admin');
const cors = require('cors')({ origin: true });
admin.initializeApp();


let transporter = nodemailer.createTransport({
    service: 'gmail',auth: {
        user: 'xxx',pass: 'xxx'
    }
});

exports.sendMail = functions.https.onRequest((req,res) => {
    cors(req,res,() => {

        // getting dest email by query string
        const dest = req.query.dest;

        const mailOptions = {
            from: 'xxx',// Something like: Jane Doe <[email protected]>
            to: 'xxx',subject: 'test',// email subject
            html: `test` 
        };

        // returning result
        return transporter.sendMail(mailOptions,(error,info) => {
            if (error) {
                return res.send(error.toString());
            }
            return res.send('Sended');
        });
    });
});
test() {
    const helloWorld = firebase.functions().httpsCallable('sendMail');
    helloWorld().then((result) => {
      console.log(result.data.output);
    }).catch((error) => {
      console.log(`error occurred`);
    });
  }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)