我应该在 SwiftUI 中的什么位置放置以下代码:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd.MM.yyyy"
如果我把它放在结构之外... {...} 我得到“顶层不允许表达式”
如果我把它放在里面,我会得到 var body: some View {...} 我得到 Function 声明了一个不透明的返回类型,但在其主体中没有 return 语句来推断基础类型。
最佳答案
有几种方法可以做到这一点。
您可以在 View 中创建静态属性 - 然后您将始终使用相同的格式化程序:
struct ContentView: View {
static let dateFormatter: DateFormatter = {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd.MM.yyyy"
return dateFormatter
}()
...
}
您还可以直接在正文中创建格式化程序,然后返回一些 View :
struct ContentView: View {
var body: some View {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd.MM.yyyy"
return VStack {
... // use the `dateFormatter` as you wish
}
}
}
关于swiftui - 我应该在 SwiftUI 中将 DateFormatter() 和 xxx.dateFormat = "xxx"放在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63292923/