В настоящее время у меня есть код ниже, который я пытаюсь использовать в качестве переключателя навигации, чтобы я мог перемещаться по различным представлениям, не используя дрянные ссылки NavigationLinks и другие. По умолчанию я WebDev, поэтому у меня возникло множество проблем, связанных с передачей моих знаний в Swift, синтаксис совершенно не похож на любой код, который я написал ранее. В любом случае, вот код:
import Foundation
import Combine
import SwiftUI
class ViewRouter: ObservableObject {
let objectWillChange: PassthroughSubject<ViewRouter,Never>
@Published var currentPage: String = "page1" {
didSet {
objectWillChange.send(self)
}
}
init(currentPage: String) {
self.currentPage = currentPage
}
}
Как видите, это действительно просто, и я просто использую объект для переключения значений и отображения разных представлений в другом файле, единственные ошибки, которые мешают мне его построить тот факт, что инициализатор говорит «Возврат из инициализатора без инициализации всех сохраненных свойств», хотя единственной переменной является переменная currentPage, которая определена. Я знаю, что он говорит, что objectWillChange не определяется сообщением, но objectWillChange не имеет какого-либо значения для назначения. Любая помощь будет оценена.