Как вызвать функцию из другого файла во Flutter? - PullRequest
0 голосов
/ 29 мая 2020

Я новичок в dart и пытаюсь вызвать функцию из моего файла auth.dart на моей странице входа. Я пробовал много решений, но это не сработало, так что есть НОВЫЕ идеи? Это мой файл аутентификации:

abstract class BaseAuth{
  Future<FirebaseUser> currentUser();
  Future<String> signIn(String email, String password);
  Future<String> createUser(String email, String password);
  Future<void> signOut();
  Future<String> getEmail();
  Future<bool> isEmailVerified();
  Future<void> resetPassword(String email);
  Future<void> sendEmailVerification();
}
class Auth implements BaseAuth{
  final FirebaseAuth _firebaseAuth = FirebaseAuth.instance;
  Future<String> signIn(String email, String password) async {
    FirebaseUser user = (await _firebaseAuth.signInWithEmailAndPassword(email: email, password: password)) as FirebaseUser;
    return user.uid;
  }
  Future<String> createUser(String email, String password) async {
    FirebaseUser user = (await _firebaseAuth.createUserWithEmailAndPassword(email: email, password: password)) as FirebaseUser;
    return user.uid;
  }
  Future<FirebaseUser> currentUser() async {
    FirebaseUser user = await _firebaseAuth.currentUser();
    print("uid ${user.uid}");
    return user;
  }
  Future<String> getEmail() async{
    FirebaseUser user = await _firebaseAuth.currentUser();
    return user.email;
  }
  Future<void> signOut() async {
    return _firebaseAuth.signOut();
  }
  Future<bool> isEmailVerified() async{
    FirebaseUser user = await _firebaseAuth.currentUser();
    return user.isEmailVerified;
  }
  Future<void> resetPassword(String email) async{
    return _firebaseAuth.sendPasswordResetEmail(email: email);
  }
  Future<void> sendEmailVerification() async{
    FirebaseUser user = await _firebaseAuth.currentUser();
    return user.sendEmailVerification();
  }
}

1 Ответ

0 голосов
/ 29 мая 2020

сначала вам нужно импортировать файл. Сделайте это в самом начале вашего файла. Вам необходимо указать путь к файлу из текущего местоположения файла. Итак, если текущий файл находится в / lib, а новый файл находится в / lib / widgets, ваш путь - «widgets / new.dart». Вы можете go создать папку вроде этой "../new.dart"

import 'new.dart';

Затем создать экземпляр объекта вашего класса и использовать этот объект для вызова функций.

New x = New();
x.getFromOtherFile();

"New" - это имя моего класса в этом примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...