Hi all,
When trying to add persistence to firebase Auth my app breaks. Perhaps anyone here knows what to do?
my error:
ERROR FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
ERROR Invariant Violation: "main" has not been registered. This can happen if:
* Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
* A module failed to load due to an error and `AppRegistry.registerComponent` wasn't called.
My code:
import {
FirebaseApp,
FirebaseOptions,
getApp,
getApps,
initializeApp,
} from 'firebase/app';
import {
initializeAuth,
getReactNativePersistence,
Auth,
getAuth,
} from 'firebase/auth/react-native';
import Constants from 'expo-constants';
import AsyncStorage from '@react-native-async-storage/async-storage';
const firebaseConfig: FirebaseOptions = {
apiKey: Constants.manifest.extra.firebase.apiKey as string,
authDomain: Constants.manifest.extra.firebase.authDomain as string,
projectId: Constants.manifest.extra.firebase.projectId as string,
storageBucket: Constants.manifest.extra.firebase.storageBucket as string,
messagingSenderId: Constants.manifest.extra.firebase
.messagingSenderId as string,
appId: Constants.manifest.extra.firebase.appId as string,
databaseURL: Constants.manifest.extra.firebase.databaseURL as string,
};
const app: FirebaseApp =
getApps().length === 0 ? initializeApp(firebaseConfig) : getApp();
const auth: Auth =
getApps().length === 0
? initializeAuth(app, {
persistence: getReactNativePersistence(AsyncStorage),
})
: getAuth(app);
export {app, auth};