Swift 4 に次のような単純なクラスがあります。
class Message {
var messageBody : String = ""
var sender : String = ""
}
そして、(1 行で) このオブジェクトのインスタンスを変数に入力したいと考えています。
私はこのようにそれをやろうとしました:
func retrieveMessages() {
let messageDB = Database.database().reference().child("Messages")
messageDB.observe(.childAdded) { (snapshot) in
let snapshotValue = snapshot.value as! Dictionary<String,String>
let text = snapshotValue["MessageBody"]!
let sender = snapshotValue["Sender"]!
let message = Message(messageBody: text, sender: sender) // relevant one liner
}
}
しかし、これはうまくいきません。私は何を間違っていますか?
また、次の点にも注意してください。
let message = Message()
message.messageBody = text
message.sender = sender
動作します。