2016-05-05 7 views
-1

をアンラップしながら、予想外にnilを見つけ、私はこのコードを実行しようとしたが、私はいつもこのエラーが出る:私はこれを取得していますなぜ致命的なエラーが:オプションの値

let FIREBASE_REF = Firebase(url: BASE_URL) 

var CURRENT_USER: Firebase 
{ 
    let userID = NSUserDefaults.standardUserDefaults().valueForKey("uid") as! String 

    let currentUser = Firebase(url: "\(FIREBASE_REF)").childByAppendingPath("users").childByAppendingPath(userID) 

    return currentUser! 
} 

誰でも知っていますか?

+0

どの行にエラーがありますか? – grez

答えて

1

値がゼロでないと考える必要があります。そのような:

var CURRENT_USER: Firebase?{ 
    let userID = NSUserDefaults.standardUserDefaults().valueForKey("uid") as? String 
    if let userId = userID { 
    let currentUser = Firebase(url: "\(FIREBASE_REF)").childByAppendingPath("users").childByAppendingPath(userId) 
     return currentUser 
    } 
    else{ 
    return nil 
    } 
} 
+0

私は別のエラーが発生しました...行中:if let userID {このエラーが発生しました:条件内の変数バインディングにはイニシャライザが必要です。 –

+0

ああ待って...私のせい...ありがとう! –