Xcode 10.2 Swift 5:动态'属性''也必须是'@objc'

Xcode 10.2 Swift 5: dynamic' property '' must also be '@objc'

将我的 Xcode 更新到 10.2(其中包括 Swift 5)后,我尝试构建我的项目并遇到此错误。

dynamic property 'openingHours' must also be '@objc'

在这行代码上

dynamic let openingHours = List<ShopHourRealm>()

在更新到 Xcode 10.2 之前,我能够毫无错误地构建和编译我的项目。 知道为什么会这样吗?

您不需要为领域列表类型指定动态。刚刚

let openingHours = List<ShopHourRealm>()

就够了。

基于此处的示例https://realm.io/docs/swift/latest/#models

import RealmSwift

// Dog model
class Dog: Object {
    @objc dynamic var name = ""
    @objc dynamic var owner: Person? // Properties can be optional
}

// Person model
class Person: Object {
    @objc dynamic var name = ""
    @objc dynamic var birthdate = Date(timeIntervalSince1970: 1)
    let dogs = List<Dog>()
}