web-dev-qa-db-fra.com

Expression implicitement contrainte de 'String?' à tout

J'ai une erreur comme celle-ci "Expression implicitement contrainte de String? à Any "ceci est mon code:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.

    FIRApp.configure()
    FIRAuth.auth()?.signIn(withEmail: "[email protected]", password: "mypassword", completion: { (user, error) in
        if (error != nil) {
            print(user?.email)
        }else {
            print(error?.localizedDescription)
        }
    })

    return true
}

Erreur dans cette ligne

print(user?.email)

Et

print(error?.localizedDescription)

Aidez-moi, s'il vous plaît

39

La fonction print nécessite un ensemble de paramètres Any. String est un Any. Dans ce cas, Xcode vous dit qu'il a implicitement forcé la chaîne facultative dans un objet Any (en transformant la valeur String en Optional(value)).

Pour éviter cet avertissement, vous pouvez simplement utiliser une valeur par défaut ou décompresser le fichier String?

print(user?.email ?? "User instance is nil")
print(user!.email)
41
Luca D'Alberti