import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter_user_profile/model/user.dart';
class AuthService {
final FirebaseAuth _auth = FirebaseAuth.instance;
//creating a user object based on Firebase user
Client? _userFromCredUser(User? user) {
return user != null ? Client(uid: user.uid) : null;
}
//for authenticate user stream
Stream<User?> get user {
return _auth.authStateChanges().map((User? user) => _userFromCredUser(user!));
}
//sign in anonymously
Future signInAnon() async {
try {
UserCredential result = await _auth.signInAnonymously();
User? user = result.user;
return _userFromCredUser(user!);
}
catch(e){
print(e.toString());
return null;
}
}
}显然,它对_userFromCredUser(用户)有一个问题,它说返回类型不是用户。这是为了在登录时进行身份验证
发布于 2022-04-15 09:36:15
这是因为函数Client?_userFromCredUser期望类型客户端返回,但返回客户端对象,或者如果用户参数为==,则返回null,而null不是返回类型客户端。
https://stackoverflow.com/questions/71876327
复制相似问题