Firebase Swift Xcode邮箱验证问题:emailVerified报错求示例代码
解决Firebase Auth无法访问
emailVerified属性的问题 嘿,我看到你这里的问题啦!你报错no member emailVerified的原因不是emailVerified属性变更了,而是代码里犯了个小错误——你把用户ID(uid,字符串类型)当成Firebase的User对象来调用属性了!
问题根源
Firebase Auth中,Auth.auth().currentUser才是包含用户完整信息(包括emailVerified)的User实例;而你提取的uid只是这个用户对象的一个字符串属性(用来标识用户的唯一ID),它本身并没有emailVerified这个成员。
正确的示例代码
下面是修正后的完整代码,先获取currentUser对象,再检查邮箱验证状态:
import FirebaseAuth import Firebase import FirebaseDatabase // 先获取当前登录的用户对象 guard let currentUser = Auth.auth().currentUser else { print("用户未登录,无法检查邮箱验证状态") return } // 检查邮箱是否已验证 if currentUser.emailVerified { print("邮箱已验证,执行对应逻辑") // 如果需要用到用户ID,可以从currentUser中提取 let uid = currentUser.uid // 这里添加你要执行的代码,比如访问Firebase Database等操作 } else { print("邮箱未验证,请引导用户完成邮箱验证") }
额外说明
如果你的业务需要同时确保用户已登录且邮箱已验证,一定要先拿到currentUser对象,再从中获取uid和emailVerified属性,而不是先提取uid再试图从uid上访问用户属性。
内容的提问来源于stack exchange,提问作者user9585671
相关产品推荐
相关产品推荐

