我有一个带有react-native-firebase的react本机应用程序,我正在尝试运行一个可调用的https firebase函数,该函数已部署到自定义区域。
我已经读过firebase.app().functions("MY-REGION")
所以我尝试了以下内容:
import { firebase } from "@react-native-firebase/database"
import functions from "@react-native-firebase/functions"
firebase.app().functions("MY-REGION")
但是如果我运行它,我会收到此错误:
Error: You attempted to use
"firebase.app('[DEFAULT]').functions" but this
module could not be found.
Ensure you have installed and imported the
'@react-native-firebase/functions' package
函数包已安装。
如果我删除导入@react-native-firebase/functions
错误保持不变。
如何在react-native-firebase
中指定火力基础 https 函数的区域?
更多尝试:
firebase.initializeApp({
...options
})
firebase.app().functions("MY-REGION")
这说明Error: Firebase App named '[DEFAULT]' already exists
firebase.initializeApp({
...options
}, "APP_NAME")
firebase.app("APP_NAME").functions("MY-REGION")
给予Error: No firebase App 'APP_NAME' has been created - call firebase.initializeApp()
我希望我错过了一些微不足道的东西。
一种解决方案是将函数导入从import functions from "..."
更改为import "..."
:
import { firebase } from "@react-native-firebase/database"
import "@react-native-firebase/functions" // <--
// call a https firebase function
firebase.app().functions("MY-REGION").httpsCallable('MyFunction')()
请注意,对于所选 httpsCallable 函数,MY-REGION
应设置为Firebase 函数信息中心中显示的区域。
我找到的修复确实非常微不足道...
我在这里分享了它,所以它对其他人有用,但欢迎更好的解决方案!