我正在尝试获取一个泛型类T
的所有成员,我可以获取基于特定class
的properties
。但是,我如何使用Mirror
做到这一点呢?
let mirrored_object = Mirror(reflecting: user)
for (index, attr) in mirrored_object.children.enumerated() {
if let propertyName = attr.label as String! {
print("Attr \(index): \(propertyName) = \(attr.value)")
}
}
发布于 2018-06-14 06:56:21
我添加了这个作为扩展
extension NSObject {
public func GetAsJson() -> [[String:Any?]] {
var result:[[String: Any?]] = [[String: Any?]]()
for item in self {
var dict: [String: Any?] = [:]
for property in Mirror(reflecting: self).children {
dict[property.label!] = property.value
}
result.append(dict)
}
return result
}
}
https://stackoverflow.com/questions/49683146
复制相似问题