我将此视图作为其父视图的工作表呈现
struct NamesView: View {
@Binding var match: Match
var body: some View {
...
}
}
Run Code Online (Sandbox Code Playgroud)
由于match
事实来源位于呈现此NamesView
工作表的父视图中,因此在构造视图时,我会$match
按预期传入绑定和数据流。
但是,在预览提供程序中构造此视图时
struct NamesView_Previews: PreviewProvider {
static var previews: some View {
NamesView()
}
}
Run Code Online (Sandbox Code Playgroud)
编译器表示NamesView()
需要一个match
类型的参数Binding<Match>
(Match
作为将此视图呈现为工作表的父视图)。我不确定从这里开始的好方法是什么,或者这是否是 SwiftUI 的限制。
如果您只想持续预览,那么可以
struct NamesView_Previews: PreviewProvider {
static var previews: some View {
NamesView(match: .constant(Match()))
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想要它在现场,它可以是
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()
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
552 次 |
最近记录: |