有条件绑定swift3日期

时间:2017-04-17 22:18:20

标签: swift swift3

我有一个强行解开问题,我一直在解决所有问题。所以我强制解包但我得到了这个错误"条件绑定的初始化程序必须具有可选类型,而不是'日期'。这是代码。

if let createdat = (object?.object(forKey: "createdAt") as? String){
        if let pastDate = Date(timeIntervalSinceNow: TimeInterval(createdat)!)//Here is where I get the error{

        }
    }

2 个答案:

答案 0 :(得分:0)

由于您使用的Date初始化程序不会返回一个可选项(即它是一个不可用的初始化程序),因此您无法做到(并且它不会感觉到)在可选的上下文中使用它(例如if-let模式)。

从代码中删除if-let可解决问题:

if let createdat = (object?.object(forKey: "createdAt") as? String){
    let pastDate = Date(timeIntervalSinceNow: TimeInterval(createdat)!)
}

答案 1 :(得分:0)

Date()不返回可选项,它返回日期。这意味着你无法使用

if let

您可以使用

let