SwiftUI未知属性“可观察对象”

米凯尔·威尔斯(Mikael Wills)

所以我在下面ObservableObject@ObservableObject var dataSource = DataSource()调用旁边收到错误Unknown属性ObservableObject完美地工作,几天前在另一个项目,但现在不是了。

import SwiftUI
import Combine


class DataSource: ObservableObject {

    var willChange = PassthroughSubject<Void,Never>()


    var expenses = [Expense]() {
        willSet { willChange.send() }
    }
    var savingsItems = [SavingsItem](){
        willSet { willChange.send() }
    }

    //@State var monthlyIncomeText: String
    //var monthlyIncome: Int = 1364


    init(){
        addNewExpense(withName: "Spotify", price: 14)

    }

    func addNewExpense(withName name: String, price: Int){
        let newExpense = Expense(name: name, price: price)
        expenses.append(newExpense)
    }

     func addNewSavingsItem(withName name: String, price: Int, percentage: Double){
        let newSavingsItem = SavingsItem(name: name, price: price, timeTilCompletion: 0, percentage: percentage)
        savingsItems.append(newSavingsItem)
    }
}

struct ContentView: View {

    @ObservableObject var dataSource = DataSource()

    var body: some View {
        VStack{
            Text("Expenses")
            List(dataSource.expenses) { expense in
                ExpenseRow(expense: expense)
            }
        } 
    } 
}

有人可以帮忙吗?

RPatel99

ObservableObjectObservedObjects必须遵守的协议这里关于文档ObservableObject,并在这里对文档ObservedObject,这是物业的包装,你正在寻找。ContentView代码更改为此:

struct ContentView: View {

    @ObservedObject var dataSource = DataSource()

    var body: some View {
        VStack {
            Text("Expenses")
            List(dataSource.expenses) { expense in
                ExpenseRow(expense: expense)
            }
        } 
    } 
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

SwiftUI保留可观察对象

如何在可观察的属性上过滤可观察的对象?

ngFor 可观察对象的数组属性

嵌套的可观察对象:将可观察对象添加为可观察对象的属性并对其进行包装

Angular2:子属性更改时更新可观察对象(嵌套的可观察对象)

为包含可观察属性的对象列表获取一个可观察对象?

异步加载存储在SwiftUI中可观察对象中的UIImage

在SwiftUI中使用可观察对象切换视图

如何完全清空具有可观察属性的可观察对象?

可观察数组的可观察对象?

动态可观察对象

如何使用可观察对象检查 ngFor 循环中的属性

无法获取Knockout.js更新可观察对象的属性

属性“”在类型“对象”上不存在。可观察的订阅

如何根据可观察对象设置角垫按钮属性?

使用Colorpicker更改可观察数组中对象的属性

VueJs如何创建具有可观察属性的对象

使用 api 调用设置可观察对象的属性

Angular9/rxjs6.5:如何将可观察对象数组转换为可观察对象属性数组?

根据对象的可观察对象过滤可观察对象数组

创建时将未知数量的可观察对象合并/合并

如何从可观察对象数组创建可观察对象数组?

从Angular HttpInterceptor中的可观察对象返回可观察对象

通过可观察对象过滤可观察对象

在SwiftUI中将可观察对象中的通知作为嵌套对象进行更改

如何在swiftui中的可观察对象中动态定义一个对象?

可观察的收集并改变属性

可观察的属性为空

可观察的发现嵌套属性