我跟随this blog post向用户注册后向用户发送电子邮件验证,这是我执行sendEmailVerification()
时遇到的问题
但是博客文章的问题在于,已弃用了某些东西,除此问题外,我设法解决了其中大部分问题。
这是我的代码:-(您可以看到import语句以获取包的名称)
import 'dart:async';
import 'package:firebase_auth/firebase_auth.dart' as auth;
import 'package:cloud_firestore/cloud_firestore.dart';
class Auth {
final auth.FirebaseAuth _firebaseAuth = auth.FirebaseAuth.instance;
Future<String> signUp(String email, String password) async {
try {
final user = await _firebaseAuth
.createUserWithEmailAndPassword(email: email, password: password);
try {
await user.sendEmailVerification(); // <== The error happens here
return user;
} catch (e) {
print('Code was not sent!');
}
} catch (e) {
print('An error occurred');
}
}
}
你能帮我解决这个问题吗?谢谢! 最佳答案
请尝试以下操作:
await user.user.sendEmailVerification();
由于createUserWithEmailAndPassword()
返回UserCredential
的实例,并且由于类 UserCredential
具有名为user
的属性,该属性返回User
的实例。因此,可以使用属性
user
调用类sendEmailVerification()
中的 User
方法。