2017-02-11 1 views
0

내부 API 클래스는 내가 자체 정의 함수를 호출하는 추가 인수가 있습니까?

func submitAnswer(id: Int, quality: Int) { 
    Alamofire.request(
     "\(API_ENDPOINT)/cards?next=true", 
     method: .post, 
     parameters: answerParams(id: id, quality: quality), 
     headers: requestHeaders() 
     ).responseJSON { response in 
      switch response.result { 
      case .success(let JSON): 
       let response = JSON as! NSDictionary 
       print(response) 
      case .failure(let error): 
       print(error) 
      } 
    } 
} 

내가 컨트롤러 내부에이 메소드를 호출하려고

, 나는 호출 오류의 추가 인수 '품질'을 가지고하는 방법으로 싱글 톤 객체 (타격 참조) submitAnswer라고합니다.

@IBAction func correctBtnPressed(_ sender: Any) { 
    let card_id = card!["data"]["id"].intValue 
    API.sharedInstance.submitAnswer(id: card_id, quality: 0) { 
     API.sharedInstance.nextCard() { card in 
      self.card = card 
      self.updateContent() 
     } 
    } 
} 

quality 매개 변수는 분명히 메서드 정의 안에 있습니다. 이 오류가 발생하는 이유는 무엇입니까?

API.sharedInstance.submitAnswer(id: card_id, quality: 0) { 

는 중괄호가 소개하는 구문의 의미가된다 :

답변

2

이유는

이 때문에 줄 끝에 중괄호의의이 오류가 데 당신이 submitAnswer이 어떤 종류의 기능인 세번째 매개 변수를 받아들이도록 선언해야 할 것입니다. 그러나 당신은 그렇지 않습니다.

관련 문제