如何避免火力地堡致命错误:意外发现零而展开可选的价值?(How to avoid Firebase

2019-09-29 03:13发布

我想从火力地堡读取和标签设置为我得到的值

这就是我的ViewController类的顶部是这样的:

import UIKit
import Firebase

class ProfileTabViewController: UIViewController {

//MARK: Properties

@IBOutlet weak var nameLabel: UILabel!
var userName = "userName"

我在火力地堡参考

var currentUserName = Firebase(url: "https://buzzmovieios.firebaseio.com/users/884962b7-9fd8-49db-b172-1ad7cb1414f4/Name")

随机字符串是火力地堡返回的UID。

我想在viewDidAppear()方法来获取用户名:

override func viewDidAppear(animated: Bool) {

    print(currentUserName)
    currentUserName.observeEventType(.Value) { (snap: FDataSnapshot!) in
        let name = snap.value as! String
        self.nameLabel.text = name
    }

}

在让利名行工作正常。

print(name)

这条线:

self.nameLabel.text = name

原因:

致命错误:意外发现零而展开的可选值(LLDB)

我试过了

let name = snap.value as? String

而这是行不通的。

这是我的火力地堡的样子:

buzzmovieios
    users
      --884962b7-9fd8-49db-b172-1ad7cb1414f4
               Major: CS
               Name: Shawn
      --8880069d-1944-493d-8246-8119fc4bfc81

等等。

我怎样才能避免这种缠误差? 谢谢!

注:我运行了XCode 7.3

Answer 1:

请使用,如果我们解开自选像

  if let name = snap.value as? String{   
         self.nameLabel.text = name
  }

并检查你的网点连接正确,否则它坠毁..



文章来源: How to avoid Firebase fatal error: unexpectedly found nil while unwrapping an Optional value?