我想将我的数据模型与ContentView分开。所以我用以下代码添加了一个SwiftUI文件:
import SwiftUI
import Combine
class User: BindableObject {
let willChange = PassthroughSubject<Void, Never>()
var username : String = "Jan" { willSet { willChange.send() }}
var password : String = "123456" { willSet { willChange.send() } }
var emailAddress : String = "jan@mail.nl" { willSet { willChange.send() } }
}
#if DEBUG
struct User_Previews: PreviewProvider {
static var previews: some View {
User()
.environmentObject(User())
}
}
#endif
我得到的错误是:
Protocol type 'Any' cannot conform to 'View' because only concrete types can conform to protocols
.environmentObject(User())行中发生错误。
答案 0 :(得分:1)
您不需要使用SwiftUI文件。它是一个必需的简单类。当然,如果您删除下面的代码,它将起作用。
#if DEBUG
struct User_Previews: PreviewProvider {
static var previews: some View {
User()
.environmentObject(User())
}
}
#endif