Ошибка: null не является объектом (оценка '_config.firebase.auth (). CurrentUser.uid') - попытка связать учетные записи в сети firebase - PullRequest
0 голосов
/ 30 мая 2020

У меня возникли некоторые трудности при связывании учетных записей в firebase с помощью react-native (Expo). Я получаю следующую ошибку: [Необработанное отклонение обещания: TypeError: null не является объектом (оценка '_config.fb.auth (). CurrentUser.uid')]

Это после добавления кода для привязки учетной записи:

let facebookProvider = await new firebase.auth.FacebookAuthProvider();    
await auth.currentUser.linkWithPopup(new firebase.auth.FacebookAuthProvider());

в коде:

 async signInWithFacebook() {
 try {
  const { type, token } = await Facebook.logInWithReadPermissionsAsync('******', {
    permissions: ['public_profile','email'],
  });


  if (type === 'success') {
    let existingEmail = null;
    let pendingCred = null;

    await firebase.auth().setPersistence(firebase.auth.Auth.Persistence.LOCAL);
    const credential = firebase.auth.FacebookAuthProvider.credential(token);

    let facebookProvider = await new firebase.auth.FacebookAuthProvider();    
    await auth.currentUser.linkWithPopup(new firebase.auth.FacebookAuthProvider());

    const facebookProfileData = await firebase.auth().signInWithCredential(credential);
    this.onLoginSuccess.bind(this)
  }
} catch ({ message }) {
  alert(`Facebook Login Error: ${message}`);
}

}

Пытался запустить facebookAuthProvider в componentDidMount (), но это не имело никакого успеха. Мне нужно связать учетные записи, если один и тот же адрес электронной почты (здесь это facebook и gmail), и мне кажется, что я делаю то же, что и в документации: https://firebase.google.com/docs/auth/web/account-linking

Спасибо за помогите!

...