如您所知,Codable是Swift 4中的新功能,因此我们将从模型的较早初始化过程转向这一点。通常我们使用以下方案
class LoginModal
{
let cashierType: NSNumber
let status: NSNumber
init(_ json: JSON)
{
let keys = Constants.LoginModal()
cashierType = json[keys.cashierType].number ?? 0
status = json[keys.status].number ?? 0
}
}
Run Code Online (Sandbox Code Playgroud)
在JSON cashierType键中可能会丢失,因此我们将默认值设置为0
现在,使用Codable做到这一点非常容易,如下所示
class LoginModal: Coadable
{
let cashierType: NSNumber
let status: NSNumber
}
Run Code Online (Sandbox Code Playgroud)
如上所述,键可能会丢失,但是我们不希望将Model Variables作为可选变量,因此我们如何使用Codable实现此目的。
谢谢