EDIT добавлен исходный код, показывающий объявление переменных
Я пытаюсь инициализировать свойство модели представления, которое является @ObservedObject @ObservedObject private var viewmodel : ExpenseListViewModel
Я хочу для инициализации модели представления с репозиторием, который будет принимать ManagedObjectContext в качестве параметра в конструкторе
Поскольку модель представления имеет оболочку prperty, она также не позволяет создавать ее как вычисляемое свойство.
когда я пытался инициализировать репозиторий и модель просмотра в init, я получаю, что перед инициализацией используется self
struct ContentView: View {
@Environment(\.managedObjectContext) private var moc
private (set) var repo: Repository
@ObservedObject private var viewmodel : ExpenseListViewModel
init() {
//let repository = CoreDataRepository(Context: moc)
repo = CoreDataRepository(Context: self.moc)
self.viewmodel = .init(repository: repo)
}
var body: some View {
Text(viewmodel.Expenses[0].Name ).onAppear(perform: viewmodel.getExpenses )
}
}