< How to fix “Cannot convert value of type 'String' to expected argument type 'Text'" | How to fix “Cannot convert value of type '() -> ()' to expected argument type '() -> _’” > |
Updated for Xcode 13.3
This error happens because you’re trying to use the @ObservedObject
property wrapper on a type that doesn’t conform to the ObservableObject
protocol.
For example, you have a type like this:
class User {
@Published var name = ""
}
And you use it in a view like this:
struct ContentView: View {
@ObservedObject var user: User
var body: some View {
Text(user.name)
}
}
To fix the problem, simply add the ObservableObject
conformance to your type, like this:
class User: ObservableObject {
@Published var name = ""
}
SPONSORED Fernando's book will guide you in fixing bugs in three real, open-source, downloadable apps from the App Store. Learn applied programming fundamentals by refactoring real code from published apps. Hacking with Swift readers get a $10 discount!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.