Как мне правильно создать контейнер, который FlutterFire ожидает для авторизации по телефону в Интернете?

#javascript #flutter #firebase-authentication

#javascript #flutter #firebase-аутентификация

Вопрос:

Я работаю над этой документацией FlutterFire

Я пытаюсь реализовать вход по телефону в Интернете. Руководство, похоже, рекомендует, чтобы RecaptchaVerifier был необязательным аргументом:

 FirebaseAuth auth = FirebaseAuth.instance

// Wait for the user to complete the reCAPTCHA amp; for a SMS code to be sent.
ConfirmationResult confirmationResult = await auth.signInWithPhoneNumber(' 44 7123 123 456');
  

Однако, когда я пытаюсь использовать метод, я вынужден указать аргумент для RecaptchaVerifier:

введите описание изображения здесь

Я подтвердил, что использую правильную версию библиотеки — firebase_auth: "^0.18.0 1" .

Итак, чтобы корректно отобразить верификатор Recaptcha, как мне создать элемент в DOM с указанным идентификатором?

Я нашел следующий соответствующий код в их Github, который показывает, как осуществляется доступ к элементу, однако конкретное понимание исходного кода ускользает от меня.

Что делать?

Ответ №1:

Да, я столкнулся с точно такой же проблемой. проблема здесь в том, что документация не синхронизирована с PR : PR, который изменяет документ, был объединен, но используемый вами плагин firebase_auth еще не был изменен, поэтому у вас все еще есть старый плагин и новый документ.. Итак, решение таково :

Вы должны выполнить точную фиксацию плагина, подобного приведенным ниже зависимостям в вашей pubspec :

 firebase_auth: 
    git:
      url: https://github.com/FirebaseExtended/flutterfire
      path: packages/firebase_auth/firebase_auth
      ref: 4a05ceba74c805bc5528137d40c75865cd21d687
  

А также ниже dependencies_override, вот так (добавьте его, если его там нет, ниже раздела dev_dependencies) :

 dependency_overrides:
  firebase_auth_web:
    git:
      url: https://github.com/FirebaseExtended/flutterfire
      path: packages/firebase_auth/firebase_auth_web
      ref: 4a05ceba74c805bc5528137d40c75865cd21d687
  firebase_auth_platform_interface:
    git:
      url: https://github.com/FirebaseExtended/flutterfire
      path: packages/firebase_auth/firebase_auth_platform_interface
      ref: 4a05ceba74c805bc5528137d40c75865cd21d687
  

Кстати, причина, по которой вам нужно переопределить зависимости, заключается в том, что плагин firebase_auth с точной фиксацией все еще использует старые версии веб-плагина flutter

Комментарии:

1. Потрясающее спасибо за подробный ответ. Я надеюсь, что это скоро будет исправлено сопровождающими.

2. Итак, мы удаляем аргумент recaptcha или оставляем его?