这个空应用程序在加载时崩溃。我试图在应用程序加载时异步执行一个函数,但它不断崩溃。我正在使用 Swift 5.5 运行 macOS v11 (Big Sur) 和 Xcode 13,但找不到问题所在。
import SwiftUI
@main
struct TestApp: App {
init() {
Controller.shared.load()
}
var body: some Scene {
WindowGroup {
VStack {
Text("Hello")
}
}
}
}
class Controller: ObservableObject {
static let shared = Controller()
@Published public var loaded = false
@Published public var processing = false
func load() {
Task.detached {
print("Hello")
}
}
}
在 SwiftUI 中,它只是
.task
而不是 Task {}
并且不需要任何对象,例如
import SwiftUI
@main
struct TestApp: App {
// init() {
// Controller.shared.load()
// }
var body: some Scene {
WindowGroup {
VStack {
Text("Hello")
.task {
print("Hello")
}
}
}
}
}
//class Controller: ObservableObject {
//
// static let shared = Controller()
//
// @Published public var loaded = false
// @Published public var processing = false
// func load() {
// Task.detached {
// print("Hello")
// }
// }
//}