Swift3で次のコードに問題があります。私は何が間違っているのか分かりませんが、 'リスト'を印刷しようとするとコンパイルエラー '未解決の識別子の使用'が表示されます。誰かが私に正しい方向を向けることができますか?未解決の識別子の使用 - Swift 3
let task = URLSession.shared.dataTask(with: request) { data, response, error in
DispatchQueue.main.async {
if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode == 200 {
do {
let json = try JSONSerialization.jsonObject(with: data!, options: JSONSerialization.ReadingOptions.mutableContainers) as? [String: Any]
guard let list = json?["response"] as? [[String : Any]] else {
return
}
} catch {
print("catch error...")
}
} //end of if let httpStatus
}//end dispacth
}//end of task
task.resume()
print(list)
'list'が有効範囲外(非同期ブロック)です。それを除いて、 'list'はその瞬間に空になります。 – vadian
'} catch {'の直前で印刷リストを試してみてください。 –
@PhillipMills私がリストを印刷する前に}キャッチすると、適切な結果が得られます。しかし、どのようにdo/catch節の外のリストからデータを扱うことができますか?リストには、TableViewに移入する必要があるデータが含まれています。私はどのようにテーブルの行にリストからデータを取得できるか分からないのですか? – Luke