dateComponents试图以年为单位计算年龄时出现问题(swiftUI)

dateComponents试图以年为单位计算年龄时出现问题(swiftUI),swift,calendar,Swift,Calendar,当我试图根据今天的日期和生日计算某人的年龄时,出现一个错误,即“Type'Set'没有成员'year'”: let birthday = "10/08/1978" let dateFormatter = DateFormatter() dateFormatter.dateFormat = "MM/dd/yyyy" let startDate = dateFormatter.date(from: birthday) let endDate = Date() let calendar = Ca

当我试图根据今天的日期和生日计算某人的年龄时,出现一个错误,即“Type'Set'没有成员'year'”:

let birthday = "10/08/1978"

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MM/dd/yyyy"

let startDate = dateFormatter.date(from: birthday)
let endDate = Date()

let calendar = Calendar.current
let calcAge = calendar.dateComponents(.year, from: startDate!, to: endDate)
let age = calcAge.year

Xcode让我将
日历.组件
更改为
日历.日期组件
,但是
。年份
立即开始报告错误。据我在开发者文档中所知,
.year
是一个有效的东西。但是开发人员文档的URL显示我正在查看calendar.dateComponents,而实际页面的标题显示calendar.components。有什么想法吗?谢谢

您必须传递一个DateComponents数组,因此调用将变成:

让calage=calendar.dateComponents([.year],from:startDate!,to:endDate)