我是新來swift和使用firebase,我正在做一個簡單的應用程序,讓我們的用戶輸入一個蜂窩前綴號碼,並顯示什麼蜂窩網絡是該號碼。爲什麼我的If-Else塊不能按照它應該的方式工作?
我對if-else部分有一個難題。每當我添加else部分時,標籤總是顯示「Missing」,但每當我打印snapshot.key和snapshot.value時,我都會在控制檯中得到正確的結果。當我刪除其他部分時,它可以工作。我真的很難找出答案。提前致謝!這裏是代碼:
import UIKit
import Firebase
class ViewController: UIViewController, FBSDKLoginButtonDelegate {
let loginButton: FBSDKLoginButton = {
let button = FBSDKLoginButton()
button.readPermissions = ["email"]
return button
}()
@IBOutlet weak var numField: UITextField!
@IBOutlet weak var answerField: UILabel!
@IBAction func enterButton(sender: AnyObject) {
matchNumber()
}
func matchNumber(){
let number: String = numField.text!
let numRef = Firebase(url: "https://npi2.firebaseio.com/num_details")
numRef.queryOrderedByKey().observeEventType(.ChildAdded, withBlock: { snapshot in
let network = snapshot.value as! String!
if snapshot.key == self.numField.text! {
self.answerField.text = network
}
else {
self.answerField.text = "Missing"
}
})
}
您發佈的代碼中沒有'else'。請將發佈的代碼縮小到與問題相關的部分。 – rmaddy
我不好意思。我已經編輯過它。謝謝 – asdf
當你打印'snapshot.key'和'self.numField.text!'它們是否相同時,你會得到什麼?你提到了快照鍵和值,但那不是你正在測試的 – Fonix