我将我的 RealmSwift 更新到 0.96 版,现在当我想为 Result 编写扩展时出现错误:
Use of undeclared type "Results"
这就是我之前想要做的。最近的更新中有关于 Result 和 List 的一些变化,但我不知道如何更改我的代码:
extension Results {
func toArray<T>(ofType: T.Type) -> [T] {
var array = [T]()
for var i = 0; i < count; i++ {
if let result = self[i] as? T {
array.append(result)
}
}
return array
}
}
最佳答案
您是将 CocoaPods 与 use_frameworks!
一起使用,还是使用您的桥接头文件(或以其他方式包含 RealmSwift)。
如果您将 CocoaPods 与 use_frameworks!
一起使用,请确保在定义扩展的文件中包含对 RealmSwift 的引用。
导入 RealmSwift
编辑: 是的,这对我有用:
import RealmSwift
extension Results {
func wow() -> String {
return "test"
}
}
此外,将您的结果转换为数组可以更容易地完成,更像这样:
var someObjects = realm.objects(SomeObjectType).map { $0 }
这将返回一个 [SomeObjectType]
类型的数组。
关于swift - RealmSwift v0.96 - 使用未声明的类型 "Results",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33305540/