Неразрешенный идентификатор JSON с SwiftyJSON

Я пытался исследовать свою проблему, но трудно найти информацию об этом. Я работаю с Alamofire и SwiftyJSON в проекте, и Alamofire работает, но SwiftyJSON не работает.

Я выполнил установку «вручную», как показано в документации здесь репозиторий SwiftyJSON git, и перетащил файл SwiftyJSON.swift. в мой проект. Я также проверил, что это часть исходного кода компилятора в настройках проекта. Вот мой код, который я использую. Это должно работать нормально, но я продолжаю получать ошибку «неразрешенный идентификатор JSON».

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    let route = "myurl"
    let params = myparams
    Alamofire.request(.GET, route, parameters: params).responseJSON { (_, response, rawJSON, _) -> Void in
        let json = JSON(rawJSON!)
    }
}

Я делал это при подготовке к переходу (что может быть плохой идеей), но моя самая большая проблема заключается в том, что он не понимает, что SwiftyJSON находится в моем проекте. Если у кого-нибудь есть идеи по исправлению этого / места, чтобы указать мне, было бы здорово.


person Ian    schedule 29.03.2015    source источник


Ответы (2)


Ваш файл контроллера представления должен принадлежать всем целям, членом которых является SwiftyJSON.swift.

Вы, вероятно, включили SwiftyJSON.swift в свою тестовую цель, но не в свой контроллер представления.

Чтобы исправить это:

  1. нажмите SwiftyJSON.swift
  2. нажмите Вид -> Утилиты -> Показать инспектор файлов и
  3. снимите флажок с тестовой цели.
person Aaron Brager    schedule 29.03.2015

Если вы используете Cocoapods, возможно, вам придется добавить библиотеку в «бинарную ссылку с библиотеками» и импортировать ее в класс, в котором вы ее используете.

person brainray    schedule 10.05.2015