Shun Yamada
Shun Yamada

Reputation: 979

Can't push Firebase Realtime Database from React Native

I have been working React Native app. And I have tried to connect it to Firebase Database. Authentication works but I could not push that to Firebase database.

ver: react native: 0.52.0 react-native-firebase

I use 'react-native-firebase' instead of 'firebase'

I proceeded in this process.

1) Create Firebase Database enter image description here

2) Write Database Rule

{
    "rules": {
    "users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid"
      }
    }
  }
}

3) Write redux/uiActions.js

/**
 * Builds an action to save employee
 */
export const employeeUpdate = ({ prop, value }) => ({
  type: 'employee_update',
  payload: { prop, value }
});

export const employeeCreate = ({ name, phone, shift }) => {
  const { currentUser } = firebase.auth();    

  return () => {
    firebase.database().ref(`/users/${currentUser.uid}/seats`)
      .push({ name, phone, shift })
    };
};

If "console.log(name,phone,shift)" in return, that works. I can see in cosole. But I cannot put them into Database.

Upvotes: 1

Views: 661

Answers (1)

Shun Yamada
Shun Yamada

Reputation: 979

I changed my rule in Firebase, after that that would work.

{
  "rules": {
    "users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid",
      }
    },
    "employees": {
      "$uid": {
        ".read": true,
        ".write": true
      }
    }
  }
}

Upvotes: 1

Related Questions