我将此视图作为其父视图的表单呈现出来
struct NamesView: View {
@Binding var match: Match
var body: some View {
...
}
}
由于match
的真相源位于呈现此NamesView
工作表的父视图中,因此在构建视图时,我会通过$match
绑定并按预期进行数据流。
但是,在预览提供程序中构建此视图时
struct NamesView_Previews: PreviewProvider {
static var previews: some View {
NamesView()
}
}
编译器说NamesView()
期望类型为match
的{{1}}自变量(Binding<Match>
是将该视图显示为表单的父视图)。我不确定从这里开始是什么好方法,或者这是否是SwiftUI的限制。
答案 0 :(得分:3)
如果您只想持续预览,则可以
struct NamesView_Previews: PreviewProvider {
static var previews: some View {
NamesView(match: .constant(Match()))
}
}
如果您想现场直播,可以是
struct NamesView_Previews: PreviewProvider {
struct BindingTestHolder: View {
@State private var testedMatch = Match()
var body: some View {
NamesView(match: $testedMatch)
}
}
static var previews: some View {
BindingTestHolder()
}
}
答案 1 :(得分:0)
尝试一下:
struct NamesView_Previews: PreviewProvider {
static var previews: some View {
NamesView(match:.constant(Match()))
}
}