2016-09-18 94 views
0

我关注这个tutorial here ...类型任何没有下标成员Swift 3.0中的错误?

而我遇到的问题是我不断收到错误。

“键入任何没有标成员错误” 在这个函数...

func allItems() -> [TodoItem] { 
let todoDictionary = NSUserDefaults.standardUserDefaults().dictionaryForKey(ITEMS_KEY) ?? [:] 
let items = Array(todoDictionary.values) 
return items.map({TodoItem(deadline: $0["deadline"] as! NSDate, title: $0["title"] as! String, UUID: $0["UUID"] as! String!)}).sort({(left: TodoItem, right:TodoItem) -> Bool in 
     (left.deadline.compare(right.deadline) == .OrderedAscending) 
} 

正在该线路上产生的错误...

return items.map({TodoItem(deadline: $0["deadline"] as! NSDate, title: $0["title"] as! String, UUID: $0["UUID"] as! String!)}).sort({(left: TodoItem, right:TodoItem) -> Bool in 
     (left.deadline.compare(right.deadline) == .OrderedAscending)} 

我完全难倒。

任何帮助,将不胜感激!谢谢!

+0

[解析JSON使用夫特3]的可能的复制(http://stackoverflow.com/questions/39458836/parsing-json-using-swift-3) –

+0

比较http://stackoverflow.com/questions/39549107/swift-3-type-any-has-no-subscript-members/39549477#39549477 – xhamr

回答

1

您需要明确指定项目对象的类型为[[String:Any]]

let items = Array(todoDictionary.values) as! [[String: Any]] 
+0

工作正常!谢谢你让我知道问题是什么。 –

相关问题