Невозможно преобразовать возвращаемое выражение типа «Пользователь» в тип возвращаемого «Пользователь?» - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть эта ошибка:

Невозможно преобразовать возвращаемое выражение типа 'Пользователь' в тип возвращаемого значения 'Пользователь?'

    var CURRENT_USER: User? {
        if let currentUser = Auth.auth().currentUser {
           return currentUser
        }
        return nil
    }

User объявление:

class User {
    var email: String?
    var ProfileImageUr: String?
    var username: String?
    var id: String?
}

extension User {

    static func transForUser(dict: [String: Any], key: String) -> User {

        let user = User()
        user.email = dict["email"] as? String
        user.ProfileImageUr = dict["ProfileImageUr"] as? String
        user.username =  dict["username"] as? String
        user.id = key

        return user
    }
}

Ответы [ 2 ]

0 голосов
/ 20 июня 2019

Существует два разных класса, оба называются пользовательскими.

  • один вы создали, а другой - из FirebaseAuth.

Решение просто переименовывает ваш класс в другойимя.

0 голосов
/ 09 февраля 2019

При этом вы возвращаете развернутого пользователя.

Попробуйте

return Auth.auth().currentUser

вместо

if let currentUser = Auth.auth().currentUser {
           return currentUser
}
return nil
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...