AsyncImage(url: url) { phase in
switch phase {
case .empty:
ProgressView()
case .success(let image):
imageProcessed(image: image)
case .failure:
Image(systemName: "photo")
@unknown default: assertionFailure()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this yields Type '()' cannot conform to 'View'
// Since the AsyncImagePhase enum isn't frozen,
// we need to add this currently unused fallback
// to handle any new cases that might be added
// in the future:
EmptyView()
^^^^^^^^^^^^^^^^^ adding return here yields Cannot use explicit 'return' statement in the body of result builder 'ViewBuilder'
}
}
There's a trick that is often used to print within a View body that you can use:
let _ = assertionFailure()
By doing a "fake" variable assignment like this, the result builder doesn't complain about syntax errors.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With