快速保存数据

时间:2020-02-03 13:14:50

标签: arrays json swift

我的用户模型定义如下:

class UserModel: NSObject {

var firsname: String?
var lastname: String?
var mail: String?

}

,在我的一个http请求中,我将json响应捕获为:

guard let mail = jsonArray[0]["mail"] as? String else { return }

因此,当我打印邮件print(mail)时,它可以正常工作并打印正确的邮件字符串,但是当我尝试将电子邮件保存在用户属性中时,它给了我nil值。

guard let mail = jsonArray[0]["mail"] as? String else { return }
    self.user?.mail = mail
    if let mailUnwrapped = self.user?.mail {
    print(mailUnwrapped)     // prints nil 
    }
我想念什么吗?任何帮助,请!谢谢

1 个答案:

答案 0 :(得分:1)

在设置用户属性之前,您可能需要先对其进行初始化。 试试:

// First
self.user = UserModel()
// Then
guard let mail = jsonArray[0]["mail"] as? String else { return }
self.user?.mail = mail