2017-09-12 6 views
0

私はちょうど既存の答えによって解決されなかったいくつかのAmbiguous reference to member 'subscript'エラーを持っていました。"メンバー 'subscript'へのあいまいな参照

enum Keys: String { 
    case items = "items" 
    // … 
} 

if let parseJSON = try JSONSerialization.jsonObject(with: data) as? [String:Any], 
    let items = parseJSON[Keys.items] as? [[String:Any]] 
{ 
    // … 
} 

parseJSON[Keys.items]に誤差が生じる:このコードは、問題を示しています。

+0

ケースに同じ文字列表現を正確に設定する必要はありません。 –

+0

@LeoDabusありがとうございました。それが起こると、すべての列挙ケースが名前に等しい値を持つわけではありませんが、私は列挙ケースのほとんどを取り除き、より読みやすくしました。 – BenRW

答えて

0

問題はKeys.itemsがタイプKeysであり、タイプがStringではないことです。解決方法はKeys.itemsの代わりにKeys.items.rawValueでインデックスを付けることです。

関連する問題