ฉันปรับใช้โปรเจ็กต์นาฬิกาของฉันใน Swift และตอนนี้ฉันกำลังย้ายไปยัง Swift 3 เนื่องจาก Xcode 8 ฉันปล่อยให้ Xcode 8 เปลี่ยนซอร์สโค้ดเป็น Swift 3 อย่างไรก็ตาม มีข้อผิดพลาดในโค้ดและฉันไม่สามารถเข้าใจได้
let unitFlags: Calendar = [.hour, .firstWeekday, .monthSymbols, .year, .minute, .firstWeekday]
var calendar = NSCalendar.current
calendar.timeZone = NSTimeZone(identifier: "UTC")!
let components = (calendar as NSCalendar).components(unitFlags, from: reservationDate)
Xcode ให้ข้อผิดพลาดในบรรทัดเหล่านี้ และฉันไม่เข้าใจปัญหา
ข้อผิดพลาด: ไม่สามารถใช้ประเภทตามบริบท ' ปฏิทิน' กับอาร์เรย์ลิเทอรัล
ข้อผิดพลาด: ป้ายกำกับอาร์กิวเมนต์ '(ตัวระบุ :)' ไม่ตรงกับโอเวอร์โหลดที่มีอยู่
ข้อผิดพลาด: ไม่สามารถแปลงค่าประเภท 'ปฏิทิน' เป็นประเภทอาร์กิวเมนต์ที่คาดไว้ 'NSCalendar.Unit'