我从服务器那里得到了字符串值。
let filename = "\(eventList[index]["filename"])"
但是我通过可选(可选(stringValue))获得了值。 所以我改变了这个。
let filename = "\(eventList[index]["filename"]!)"
然后我用 Optional(stringValue)获得了值。 我不能再做这个错误了。 如何在没有任何可选项的情况下读取文件名?
答案 0 :(得分:0)
使用nil-coalescing运算符aka双问号运算。它用于在展开可选类型时提供默认值。
let filename = eventList[index]["filename"] ?? ""
答案 1 :(得分:0)
使用if let fileName = eventList[index]["filename"] {
// use fileName
}
语法解包可选:
{{1}}
答案 2 :(得分:0)
<canvas id="canvas" width="500" height="500"></canvas>
访问给定索引处的数组项。您所引用的项目似乎是一个可选字典,因此在访问字典项目之前需要将其解包:eventList[index]
(假设它存在并且当然有效,否则会崩溃)
然后你可以访问字典要求值,这也是一个可选项:
eventLists[index]!
假设您的列表有效,您将获得所需的eventLists[index]!["fileName"]!
对象。
我建议使用安全检查(String
或其他变体)来防止崩溃