如何解决当我通过 ViewModel 在 SwiftUI 中遇到 API 请求错误时如何显示警报?
下面是 NewsViewModel。我应该在这个 viewModel 中添加什么属性来触发其相应视图中的警报?提前致谢。
解决方法
我会为此创建一个枚举类型。在您的视图模型中,我可能会添加以下内容:
enum Error {
case noNetwork
case noNewsFound
case missingImages
var alert: Alert {
switch self {
// Build SwiftUI.Alert instances for each error case
}
}
}
然后我会将此属性添加到您的视图模型中:
@Published var error: Error?
最后,在您看来,我要添加:
// Your view here
.alert(item: $viewModel.error) { error in
error.alert // This returns the computed Alert you added to your Error type
}
然后在您的视图模型中,您只需将 error
属性设置为适当的错误,您的视图就会显示警报。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。