SwiftUI:在初始值设定项中绑定:默认值
SwiftUI: Binding in initializer: default value
考虑以下示例:
struct TestView: View {
@Binding private var value: String
init(value: Binding<String>) {
self._value = value
}
}
如何在没有任何 Binding
的情况下初始化 TestView
,即将它绑定到一个空字符串(如果调用者不需要连接那个 属性)?
理想情况下,我可以像这样(有时)使用 TestView
:
TestView()
我试过在初始化程序中设置默认值,但显然失败了:
init(value: Binding<String> = Binding<Strings>("")) {
关于如何解决此 API 问题的任何方法?
使用constant
工厂方法:
init(value: Binding<String> = .constant("")) {
self._value = value
}
现在您可以 TestView()
.
考虑以下示例:
struct TestView: View {
@Binding private var value: String
init(value: Binding<String>) {
self._value = value
}
}
如何在没有任何 Binding
的情况下初始化 TestView
,即将它绑定到一个空字符串(如果调用者不需要连接那个 属性)?
理想情况下,我可以像这样(有时)使用 TestView
:
TestView()
我试过在初始化程序中设置默认值,但显然失败了:
init(value: Binding<String> = Binding<Strings>("")) {
关于如何解决此 API 问题的任何方法?
使用constant
工厂方法:
init(value: Binding<String> = .constant("")) {
self._value = value
}
现在您可以 TestView()
.