ios - 无法存储 Firebase 数据类型“AuthService”没有成员“setUserinformation”
问题描述
我发现很难解决将数据存储到 Firebase 控制台的问题。我相信代码有些正确,但我似乎无法找出错误
类型“AuthService”没有成员“setUserinformation”
希望有人可以帮助我解决我的问题。非常感谢您的帮助!
我还附上了问题的截图:问题截图
static func signUp(username: String, email: String, password: String, firstname: String, lastname: String, imageData: Data, onSuccess: @escaping () -> Void, onError: @escaping (_ errorMessage: String?) -> Void) {
Auth.auth().createUser(withEmail: email, password: password) { (authData: AuthDataResult?, error: Error?) in
if error != nil {
onError(error?.localizedDescription)
return
}
let uid = authData!.user.uid
let storageRef = Storage.storage().reference(forURL: Config.STORAGE_ROOF_REF).child("profile_image").child(uid)
storageRef.putData(imageData, metadata: nil, completion: { (_, error: Error?) in
if error != nil {
return
}
storageRef.downloadURL(completion: { (url: URL?, error: Error?) in
if let profileImageUrl = url?.absoluteString {
self.setUserInformation(profileImageUrl: profileImageUrl!, username: username, email: email, firstname: firstname, lastname: lastname, uid: uid, onSuccess: onSuccess)
}
}
)}
)}
}
解决方案
您在静态方法 ( s ignUp ) 中调用了类方法 ( s etUserInformation ),这是不允许的,并且在您调用它时未创建self对象。
您可以通过向 setUserInformation 方法添加静态或从signUp方法中删除静态来解决它。
推荐阅读
- nginx - ubuntu 20.04 上 minkube 中的跨命名空间通信
- python - 如何在 Chrome 的 Netwotk 选项卡检查中使用 *.php 在 Python 中抓取一些数据
- linux - printf - 打印 n 然后在下一行打印一个字符 n 次
- html - 通讯模板 - 正确显示表格
- json - 错误的 Json Flutter
- python - 气流 GoogleCloudStorageToGoogleCloudStorageOperator 错误
- amazon-web-services - 在 Grafana 中监控 Amazon EC2 API 请求
- mediawiki - 我有一个旧的媒体 wiki 根目录,我不确定是否能够恢复它
- visual-studio-code - 在 VSCode 配置中使用命令
- c - 打印第四面的任何有效尺寸以制作非退化的简单四边形