Swift 3 Type'Any'没有下标成员

我只是将我的项目转换为Swift 3我在这里有这行代码:

let type = self.data[indexPath.row]["Type"] as? String 

但现在我得到这个错误:

 Type 'Any' has no subscript members 

为什么我得到这个错误,并修复它?

 let type = (self.data[indexPath.row] as? [String : String])?["Type"] 

您需要将self.data[indexPath.row]转换为字典。

无论是您的data还是下标时返回的值,例如data[0]都有Anytypes,您正在尝试下标。

确保编译器知道你得到的是一个支持下标的已知types。 像和数组或字典例如。