2016-02-17 22 views
2

關於這個錯誤有很多問題,但我還沒有找到任何相關的。「茫然地使用'下標'」

我編譯和運行我的項目很多次,一切都很好,然後突然,完全憑空,Xcode中開始顯現出以下錯誤這一行:

if let userId = jsonresult["user_id"]{...} 

我使用SwiftyJSON。

我很困惑,因爲這個錯誤不在這裏。我沒有改變這個課程中的任何東西,我甚至檢查了之前的應用程序啓動並運行的提交,現在錯誤也在那裏。

我試着清理項目並刪除派生數據,但它什麼也沒做。

+0

你得到的錯誤信息是什麼? – uchiha

+0

模糊使用下標 – DCDC

回答

2

這很奇怪,但有時候因爲你的錯誤說編譯器不能很好地推斷錯誤的類型正在發生。 SwiftyJSON可選拼命三郎非可選訪問在JSON的元素,因此你的情況,你可以使用可選的getter與其相應的轉換類型,請參閱下面的代碼吸氣

if let userId = jsonresult["user_id"].int {...} 

在上述情況下,我使用的.int可選的getter,因爲我認爲"user_id"是一個數字,但可以使用其他可用的類似boolstring甚至得到error生產。

可選干將SwiftyJSON實施正是爲了避免您必須將結果轉換的吸氣劑,以你認爲最適合的類型如以下方式每次:

if let userId = jsonresult["user_id"] as! Int {...} 

希望這對你有幫助。