Renji
Renji

Reputation: 310

Expo and firebase cloud functions

Edit: I Solved the Problem by changing import '@firebase/functions' to import 'firebase/functions'


I'm creating an app using expo and firebase. I trying to add Cloud functions to be callable in my app.

My code is the following in my FirebaseApi.js

import * as firebase from 'firebase'
import '@firebase/functions'

const firebaseConfig = {
  apiKey: "...",
  authDomain: "...",
  databaseURL: "...",
  projectId: "...",
  storageBucket: "...",
  messagingSenderId: "..."
}



export default class Firebase {
  static auth;
  static database;
  static storage;
  static functions;
  static EmailAuthProvider;

  static init() {
    firebase.initializeApp(firebaseConfig);

    Firebase.auth = firebase.auth();
    Firebase.auth.setPersistence(firebase.auth.Auth.Persistence.LOCAL);

    Firebase.EmailAuthProvider = firebase.auth.EmailAuthProvider;

    Firebase.database = firebase.database();

    Firebase.storage = firebase.storage();

    Firebase.functions = firebase.functions();
  }
}

First i encountered the error that firebase.functions() is undefiend, which lead me to the following article on here: Implement callable cloud functions in Firebase client app

But this solution doesn't seem to work with firebase. I did call npm install --save @firebase/functions and in my package.js @firebase/functions is insalled.

But when trying to build the app it states

Unable to resolve @firebase/functions" from ".//js/firebase/firebaseAPI.js"

Am i doing something wrong, or is there maybe a problem using Firebase Cloud functions with expo?

Upvotes: 2

Views: 2683

Answers (1)

Renji
Renji

Reputation: 310

The solution in the link was almost right. For me, I needed to ditch the @.

So, instead of

import '@firebase/functions'

you need

import 'firebase/functions'

Upvotes: 3

Related Questions