web-dev-qa-db-ja.com

「String?」から暗黙的に強制される式に

次のようなエラーがあります。「式はString?からAnyに暗黙的に強制されます」これは私のコードです:

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
}

この行のエラー

print(user?.email)

そして

print(error?.localizedDescription)

私を助けてください

39

print関数には、Anyパラメーターのセットが必要です。 StringAnyです。この場合、Xcodeは、オプションの文字列をAnyオブジェクトに暗黙的に強制したことを通知しています(Optional(value)String値を変換することにより)。

この警告を回避するには、デフォルト値を使用するか、String?をアンラップします。

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