swift什么是从firebase检索snap节点的最佳方式
问题描述:
如何从此快照中检索senderId
。 ChildAdded
必须使用并且下面的FirRef必须保持不变。swift什么是从firebase检索snap节点的最佳方式
这是我目前的FUNC从火力
func retrieveInfo(completion: (result: String)->()) {
fireBaseAPI().childRef("version_one/frontEnd/post/\(self.previousViewMessageId)").observeEventType(.ChildAdded, withBlock: {snapshot in
})
检索数据这是正在打印
Snap (postDescription) Description here
Snap (postTitle) What do you need done
Snap (receiverId) RYclS9Qy4vRr6gp8JbfoztSYQnL2
Snap (senderId) niZKOcnoh0cdFpF2K26bxugw1hz1
Snap (status) 0
Snap (messages) {
"-KRqOqd2POJYpCNSSumG" = {
mediaType = TEXT;
senderDisplayName = "";
senderId = niZKOcnoh0cdFpF2K26bxugw1hz1;
text = iPhone;
};
}
什么是检索任何说快
节点的最佳途径快照这是firebase Json
{
"version_one" : {
"frontEnd" : {
"post" : {
"-KRoucvwAs1jBaoNahDP" : {
"messages" : {
"-KRqOqd2POJYpCNSSumG" : {
"mediaType" : "TEXT",
"senderDisplayName" : "",
"senderId" : "niZKOcnoh0cdFpF2K26bxugw1hz1",
"text" : "iPhone"
}
},
"postDescription" : "Description here",
"postTitle" : "What do you need done",
"receiverId" : "RYclS9Qy4vRr6gp8JbfoztSYQnL2",
"senderId" : "niZKOcnoh0cdFpF2K26bxugw1hz1",
"status" : 0
}
},
答
func retrieveInfo(completion: (result: String)->()) {
fireBaseAPI().childRef("version_one/frontEnd/post/\(self.previousViewMessageId)").observeEventType(.ChildAdded, withBlock: {snapshot in
if let messageDict = snapshot.value in [String:AnyObject]{
let senderId = messageDict["senderId"] as! String
.....
}
})
你的回答是马克接受谢谢。 – pprevalon