小编Tri*_*ael的帖子

如何使ObservableObject符合Codable协议?

在SwiftUI beta 5中,Apple引入了@Published批注。该注释当前阻止此类符合Codable协议。

如何符合这些协议,以便可以将此类编码和解码为JSON?您现在可以忽略image属性。

class Meal: ObservableObject, Identifiable, Codable {

    enum CodingKeys: String, CodingKey {
        case id
        case name
        case ingredients
        case numberOfPeople
    }

    var id = Globals.generateRandomId()
    @Published var name: String = "" { didSet { isInputValid() } }
    @Published var image = Image("addImage")
    @Published var ingredients: [Ingredient] = [] { didSet { isInputValid() } }
    @Published var numberOfPeople: Int = 2
    @Published var validInput = false

    func isInputValid() {
        if name != "" && ingredients.count > 0 { …
Run Code Online (Sandbox Code Playgroud)

swift codable swiftui

3
推荐指数
4
解决办法
568
查看次数

标签 统计

codable ×1

swift ×1

swiftui ×1