Xcode强迫我解开一个非可选的值

时间:2018-11-25 21:51:32

标签: swift firebase optional

我正在使用Swift和Firebase创建一个基本的博客应用程序,以练习编程技能。

这是我的用户模型:

Select-String

以下是xcode给我的错误代码段:

class UserProfile {
    var uid: String
    var username: String
    var photoURL: URL
    init(uid: String, username: String, photoURL: URL){
        self.uid = uid
        self.username = username
        self.photoURL = photoURL
    }
}

您已经注意到,“ UserProfile”类的“ photoURL”属性不是可选的。 Xcode要求我使用(self.line?.author.photoURL)!强制解开此非可选值。可能会发生什么?我想念什么?

非常感谢您的关注。

1 个答案:

答案 0 :(得分:2)

问题不在于photoURL。问题是,尽管正确地解开了可选属性line,您还是错误地尝试使用仍可选的self.line。因为这是可选的,所以整个self.line?.author.photoURL是可选的。

只需将self.line?.author.photoURL更改为line.author.photoURL