我收到以下错误:
The return type 'AuthUser?' isn't a 'User?', as required by the closure's context.
从下面的代码:
class AuthService {
final FirebaseAuth authInstance = FirebaseAuth.instance;
final FirebaseFirestore firestoreInstance = FirebaseFirestore.instance;
Stream<User?> get currentUser => authInstance.authStateChanges().map(
(User? firebaseUser) => (firebaseUser != null) ? AuthUser.fromFirebaseUser(user: firebaseUser) : null,
);
}
下面是模型类的代码:
import 'package:firebase_auth/firebase_auth.dart';
class AuthUser {
String? uid;
String? email;
String? userName;
AuthUser({
required this.uid,
required this.email,
required this.userName,
});
AuthUser.fromFirebaseUser({User? user}) {
uid = user!.uid;
email = user.email;
userName = user.displayName;
}
}
我还想知道如何使用StreamProvider<AuthUser>.value
.
请让我知道是Consumer
小部件还是Provider.of(context)
小部件,哪一个适合访问这些值。
在此先感谢您的帮助。