HandyJSON
HandyJSON copied to clipboard
配合realmswift用不了啊
用dynamic修饰的时候直接不用存了。数据都是0,然后取掉之后从realm取出来整个模型没问题。但是用.属性 取出来的属性都是初始的值。
是 dynamic 和 mapping 的问题, HandyJSON 本身就不支持这个.
我目前的解决方法,有两个, 虽然都不是很好, 不过抛转引玉, 肯定会有更好的方法的
HandyJSON 版本: 5.0.0
Swift 版本: 5.0
我拿以下Json作为示例
{
"Name":"我是Sinking"
}
- 直接用后台传来的 Key
如果你并不介意直接用后台传来的key, 那么就可以直接声明
@objc dynamic Name: String?
这样就算有 dynamic, 也是可以用的. 当然, 如果你愿意这样, 那么也不会来寻求答案, 那么可以看看第二种
- 利用 willSet
代码如下
class XQTestModel: NSObject, HandyJSON {
required override init() {
super.init()
}
@objc private var Name: String?
{
willSet {
xq_name = newValue
}
}
@objc dynamic var xq_name: String?
}
这个方法虽然有点蠢, 但是起码能解决目前的问题.
如有更好的方法, 请告诉我, 因为我也不想再用这么蠢的方法了 (╯﹏╰)
坐等解决办法