Javascript 使用firebase从前端js调用exports node.js函数

Javascript 使用firebase从前端js调用exports node.js函数,javascript,node.js,firebase,google-cloud-functions,Javascript,Node.js,Firebase,Google Cloud Functions,我正在尝试在firebase上使用js发送电子邮件,并且正在努力通过firebase调用后端函数 下面是我想调用的简单函数(inside index.js) 我希望能够通过我的脚本或外部js调用它,如下所示: function sendEmail() { var testFunction = firebase.functions().httpsCallable('test'); alert(testFunction()); } ^这在index.html文件的脚本标

我正在尝试在firebase上使用js发送电子邮件,并且正在努力通过firebase调用后端函数

下面是我想调用的简单函数(inside index.js)

我希望能够通过我的脚本或外部js调用它,如下所示:

  function sendEmail()
  {
    var testFunction = firebase.functions().httpsCallable('test');
    alert(testFunction());
  }
^这在index.html文件的脚本标记内

我试着跟着你 但是我很难理解它


我也试着看看这个电子邮件发送者的例子是如何工作的,但所有的功能都是由用户登录或删除其帐户的事件触发的:

按照链接中给出的步骤操作:。然后添加以下函数

function sendEmail() {
   return new Promise((resolve,reject)=>{
        firebase.functions().httpsCallable('test')().then(function(result) {
            // Handle result of your cloud function.
            resolve(data)
        }).catch(function(err){
            //Handle error
            reject(err)
        });
   })
}
现在你可以在任何地方调用这个函数。您的错误是将sendEmail()作为同步函数调用,但它是一个异步函数

function sendEmail() {
   return new Promise((resolve,reject)=>{
        firebase.functions().httpsCallable('test')().then(function(result) {
            // Handle result of your cloud function.
            resolve(data)
        }).catch(function(err){
            //Handle error
            reject(err)
        });
   })
}

希望有帮助

很抱歉回复太晚,我尝试了你的解决方案,但我得到了一个firebase.functions不是一个函数错误,它的下划线是:firebase.functions().httpscalable('test')。然后(函数(结果){当我尝试运行您的代码时,您似乎还没有在本地环境中安装firebase。首先安装firebase,然后实现我的代码。同一个脚本包含执行firebase身份验证的功能,如登录和删除帐户等,所以这不意味着firebase存在吗?您可以检查是否包含了fi吗重基函数,如:firebase应用程序、身份验证、数据库和初始化都包含脚本,我很确定。我会尝试添加函数