Firebase auth не является функцией

Я получил эту ошибку TypeError: WEBPACK_IMPORTED_MODULE_4__firebase.c.auth не является функцией

Строка, в которой я получил ошибку, - это первая строка.

firebase.auth().createUserWithEmailAndPassword(email, password).then(authUser => {

          // Create a user in your own accessible Firebase Database too
          db.doCreateUser(authUser.user.uid, username, email, gender, coin, followers, followings)
            .then(() => {
              this.setState(() => ({ ...INITIAL_STATE }));
              history.push("/");
            })
            .catch(error => {
              this.setState(updateByPropertyName('error', error));
            });
        })
        .catch(error => {
          this.setState(updateByPropertyName('error', error));
        });
      //To prevent reloading of page after submit
      event.preventDefault();
      <Redirect to = "/"/>;
    }

Я пытаюсь создать пользователя с адресом электронной почты и паролем, используя аутентификацию firebase. Кроме того, я добавляю всю информацию из ввода в базу данных firebase в реальном времени. Я искал ответ, но ничего не вышло. Кто-нибудь знает как исправить ??

Какую версию firebase js sdk вы используете, и убедитесь, что вы включили связанные с авторизацией js?

William Chong 18.06.2018 18:56

Да. Я думаю, здесь есть некоторые сложности, потому что на server.js есть firebase-admin. Это все, что я могу сказать.

Lillian 23.06.2018 20:36
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
6 191
3

Ответы 3

Правильно ли вы импортировали firebase?

import * as firebase from 'firebase';

импортировать firebase из firebase / app; импортировать firebase / auth; Вот как я импортирую firebase и auth.

Lillian 23.06.2018 20:37

Вы можете поделиться ссылкой на свой код? это на гитхабе?

Dylan Prem 26.06.2018 15:10

Вы вызвали метод firebase перед инициализацией firebase firebase.init(config);

Да, потому что вы не создали экземпляр провайдера Google.

const provider = new firebase.auth.GoogleAuthProvider();

теперь ваш код будет выполняться

firebase
  .auth()
    .signInWithRedirect(provider)
    .then((result) => console.info(result))
    .catch((errors) => console.info(error));

Более подробную информацию можно найти здесь: firebase - ссылка

Другие вопросы по теме