我正在做一个条形图在我的SwiftUI应用程序,但是我遇到了一个问题…
struct ViewMonth: Identifiable {
let id = UUID()
let date: Date
let viewCount: Int
}
我在上面的代码中定义了几个变量类型。
struct Date {
static func from(year: Int, month: Int, day: Int) -> Date {
let components = DateComponents(year: year, month: month, day: day)
return Calendar.current.date(from: components)!
}
}
似乎我不能转换表达式类型'Foundation。日期"到"barcharts .日期"。我看不懂错误信息。请帮助!
我希望代码不会产生错误。
错误提示您的Date
类型与Foundation
中现有的Date
类型的术语冲突。
基本上有三个选项:
- 用
extension Date
代替struct Date
- 将结构体
Date
重命名为不会干扰Foundation
框架中的任何类型的结构体。 - 声明所有自定义类型的实例为
BarCharts.Date
。
我推荐第一个选项。
有两种类型:Date是每个人都使用的日期类型。我假设你在Barcharts类中定义了struct Date,所以它是Barcharts.Date.
" from "函数被声明为返回Date -这是Barcharts.Date的快捷方式。现在错误消息应该是有意义的。你想让它返回什么由你来决定。