最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to set functions region for React Native Firebase - Stack Overflow

programmeradmin0浏览0评论

I have a react native app with react-native-firebase and I'm trying to run a callable https firebase function which is deployed to a custom region.

I've read that firebase.app().functions("MY-REGION") so I tried the following:

import { firebase } from "@react-native-firebase/database"
import functions from "@react-native-firebase/functions"

firebase.app().functions("MY-REGION")

But If I run that I get this error:

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

The functions package is installed.

If I remove the @react-native-firebase/functions import the error stays the same.

How can I specify the region for firebase https functions in react-native-firebase?


More attempts:

firebase.initializeApp({
   ...options
})

firebase.app().functions("MY-REGION")

And that says Error: Firebase App named '[DEFAULT]' already exists

firebase.initializeApp({
   ...options
}, "APP_NAME")

firebase.app("APP_NAME").functions("MY-REGION")

Gives Error: No firebase App 'APP_NAME' has been created - call firebase.initializeApp()


I hope I'm missing something trivial.

I have a react native app with react-native-firebase and I'm trying to run a callable https firebase function which is deployed to a custom region.

I've read that firebase.app().functions("MY-REGION") so I tried the following:

import { firebase } from "@react-native-firebase/database"
import functions from "@react-native-firebase/functions"

firebase.app().functions("MY-REGION")

But If I run that I get this error:

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

The functions package is installed.

If I remove the @react-native-firebase/functions import the error stays the same.

How can I specify the region for firebase https functions in react-native-firebase?


More attempts:

firebase.initializeApp({
   ...options
})

firebase.app().functions("MY-REGION")

And that says Error: Firebase App named '[DEFAULT]' already exists

firebase.initializeApp({
   ...options
}, "APP_NAME")

firebase.app("APP_NAME").functions("MY-REGION")

Gives Error: No firebase App 'APP_NAME' has been created - call firebase.initializeApp()


I hope I'm missing something trivial.

Share Improve this question edited Jun 13, 2020 at 20:43 Frank van Puffelen 601k85 gold badges890 silver badges860 bronze badges asked Jun 13, 2020 at 20:31 GuglieGuglie 2,4712 gold badges29 silver badges51 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 10

A solution is to change the functions import from import functions from "..." to 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')()

Note that MY-REGION should be set to the region shown in the firebase functions dashboard for the selected httpsCallable function.

The fix I found was indeed quite trivial...
I've shared it here so it can be useful for others, but better solutions are wele!

发布评论

评论列表(0)

  1. 暂无评论