# #javascript #reactjs #firebase #firebase-authentication
Вопрос:
Я пытаюсь создать простое приложение, которое позволяет входить в систему по номеру телефона, но, похоже, оно абсолютно ничего не делает, когда я нажимаю кнопку с вызовом «setupCaptcha».
Строка: import firebase from '../firebase'
(строка 5) абсолютно ничего не делает (на нее нигде в коде нет ссылок), но когда я ее комментирую, она выдает мне эту ошибку: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).
когда я ее раскомментирую, нажатие кнопки абсолютно ничего не делает.
import React from 'react'
import { useHistory } from 'react-router-dom'
import { MainButton } from '../components/MainButton'
import { MainInput } from '../components/MainInput'
import firebase from '../firebase'
// import { getAuth, RecaptchaVerifier, signinWithPhoneNumber } from "firebase/auth";
import { getAuth, RecaptchaVerifier, signInWithPhoneNumber } from "firebase/auth";
export default function EnterPhoneNumber() {
const history = useHistory();
// const phoneNumber = getPhoneNumberFromUserInput();
function setupCaptcha() {
const auth = getAuth();
window.recaptchaVerifier = new RecaptchaVerifier('sign-in-button', {
'size': 'invisible',
'callback': (response) => {
// reCAPTCHA solved, allow signInWithPhoneNumber.
// onSignInSubmit();
onSignInSubmit()
}
}, auth);
}
function onSignInSubmit() {
const auth = getAuth();
const appVerifier = window.recaptchaVerifier;
signInWithPhoneNumber(auth, " 447xxxxxxxxx", appVerifier)
.then((confirmationResult) => {
// SMS sent. Prompt user to type the code from the message, then sign the
// user in with confirmationResult.confirm(code).
window.confirmationResult = confirmationResu<
// ...
}).catch((error) => {
// Error; SMS not sent
// ...
});
}
Это мое firebase.js
досье:
import firebase from 'firebase/compat/app'
// import 'firebase/compat/auth'
const app = firebase.initializeApp({
apiKey: "xxxxxxx",
authDomain: "xxxxxx.firebaseapp.com",
projectId: "xxxxxx",
storageBucket: "xxxxxxxx.appspot.com",
messagingSenderId: "xxxxxxxx",
appId: "xxxxxxxxxx"
})
// export const auth = app.auth();
export default firebase;