Swift/UIKit

[UIKit] 후행 Closure 를 통해 결과에 따라 다른 행동을 하게 해주자 : completion, @escaping

insub4067 2022. 7. 8. 15:18

실행될 함수이다.

query(검색어)를 받고 youtube api에 요청을 보내어 

결과를 받아오는 함수이다.

 

api request의 결과 값에 따라 completion을 통해

함수가 끝나고 다른 행동을 해줘~ 라고 result를 보낼수 있다.

 

try catch를 통해 request가

성공하면 completion(.success())를 통해 성공했다고 알려준다

실패하면 completion(.failture())을 통해 error을 던져준다.

 

(Result 로써 VideoElement 넘겨주거나 Error 를 넘겨주게 된다.)

아래는 위에 함수를 호출 하는 코드이다.

후행 Closure를 통해 받아온 result를 실행해준다.

result가 .success 일 경우....

result가 .failure 일 경우...

 

두가지 case로 handling 해주고 있다.