我正在使用FSCalender库制作一个日程安排应用程序。
在 numberofevents 函数下(用于在返回 int 时生成点),我从 Firebase 数据库中获取数据并尝试在数据库中存储日期时显示点。
但是,返回int后,出现错误:
void 函数中出现意外的非 void 返回值
由于这个第三方库,我真的被困在修复这个错误上。有什么想法可以解决这个问题吗?提前致谢。
//function for making dot: we want to make dots after selecting and saving time
func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int {
// fetching from firebase db. if there is a date stored on the date, a dot will be shown
let tmpDate = Calendar(identifier: .gregorian)
let year = tmpDate.component(.year, from: date)
let month = tmpDate.component(.month, from: date)
let day = tmpDate.component(.day, from: date)
let m = String(format: "%02d", month)
let d = String(format: "%02d", day)
let da = "\(year)/\(m)/\(d)"
if let uid = Auth.auth().currentUser?.uid {
let ref = Database.database().reference().child("schedule").child(uid)
ref.observe(.childAdded, with: { (snapshot) in
//print(snapshot.value)
guard let dictionary = snapshot.value as? [String: Any] else {return}
Database.fetchUserWithUID(uid: uid, completion: { (user) in
let schedule = Schedule(user: user, dictionary: dictionary)
if schedule.date == da {
print("a dot will show")
return 1 //Error "Unexpected non-void return value in void function" occurs here
}
})
}) { (err) in
print("failed to fetch data")
}
}
return 0
}