升级到 Xcode 13.3 后,项目不再构建,因为错误:命令 EmitSwiftModule 失败,退出代码非零。
\n有谁知道是什么问题?协议中只有关于使用AnyObject而不是警告。class我猜问题出在某个图书馆。但问题到底出在 \xe2\x80\x94 上还不清楚,因为 Xcode 甚至没有提示。有什么方法可以定位错误吗?
假设您有一个在全局上下文中异步执行的方法。根据执行情况,您需要更新 UI。
private func fetchUser() async {
do {
let user = try await authService.fetchCurrentUser()
view.setUser(user)
} catch {
if let error = error {
view.showError(message: error.message)
}
}
}
Run Code Online (Sandbox Code Playgroud)
切换到主线程的正确位置在哪里?
@MainActor给fetchUser()方法:@MainActor
private func fetchUser() async {
...
}
Run Code Online (Sandbox Code Playgroud)
@MainActor给setUser(_ user: User)和showError(message: String)视图的方法:class SomePresenter {
private func fetchUser() async {
do {
let user = try await authService.fetchCurrentUser()
await view.setUser(user)
} catch {
if let error = error …Run Code Online (Sandbox Code Playgroud)